2011-04-27 3 views
1

System.Web.UI.Page를 상속받은 클래스를 만들었습니다.응용 프로그램 수명주기 이벤트 테스트

이 클래스에서는 page_load 및 page_init와 같은 일부 응용 프로그램주기 이벤트를 재정의합니다. 이러한 이벤트의 기반을 호출하기 전에 세션 값, 쿠키 및 그런 것들을 확인합니다.

세션 및 쿠키를 검사하는 메소드를 단위 테스트하고 싶습니다. 나는 이미 세션과 쿠키 객체를 조롱 할 수있다. 유닛 수명주기 이벤트를 단위 테스트 할 수 있습니까? 또는 라이프 사이클 이벤트에서 호출 된 모든 메소드가 별도의 클래스에 있도록 클래스를 완전히 다시 팩할 수있는 유일한 옵션은 무엇입니까?

답변

1

관련 객체를 조롱 할 수있는 경우 라이프 사이클 메소드를 직접 호출 할 수 있습니다. 그러나 그것이 좋은 생각인지 나는 모른다. IMHO, 하나의 라이프 사이클 이벤트 핸들러는 여러 태스크를 수행해야하며, 각각의 태스크는 다른 클래스에 위임되어야하며, 유닛 테스트를 수행해야하는 코드입니다.

개인적인 습관은 유틸리티/서비스/저장소 코드를 직접 테스트하고 단위 테스트보다는 통합 테스트에 적용되는 코드 만 수명주기 이벤트에 그대로 두는 것입니다.