2013-01-09 2 views
7

단위 테스트를하고 있습니다. asp.net에서 단위 테스트 global.asax하는 방법을 모르겠다. asp.net의 global.asax는 단위 테스트 범위에 속합니까? 또한 시스템 변수를 포함하는 응용 프로그램 설치 프로그램 클래스가 있습니다. 나는 그들을 테스트해야합니까?우리는 asp.net에서 global.asax 테스트 단위 수 있습니까?

+0

& 응용 프로그램 설치 프로그램은 어떻게됩니까? public void Install (Castle.Windsor.IWindsorContainer container, Castle.MicroKernel.SubSystems.Configuration.IConfigurationStore store) {// something} –

+0

코드 샘플을 게시 할 수 있습니까? – Buzzer

답변

5

하실 수 있습니다. 그러나 그렇게해서는 안됩니다. 단위 테스트는 이름에서 알 수 있듯이 단위를 테스트합니다. global.asax 또는 시스템 구성의 코드가 하나의 단위가 아닙니다. 이러한 것들에 대한 테스트는 코드와 정말 밀접하게 결합되며 관련성없는 것으로 변경하여 가치가 없으므로 항상 오류가 발생합니다. 응용 프로그램 테스트에는 관련성이있는 다른 수준 인 통합 테스트, 자동화 등이 있습니다. 모든 것을 '단위 테스트'에 포함시키지 않아야하며 잘 정의 된 단일 부분 만 사용해야합니다. 예 : 당신은 당신의 web.config 나 DI 컨테이너 설정을 단위 테스트하지 않지만 다른 레벨에서 그것들을 테스트합니다.

6

이것에 대한 내 입장은 global.asax에서 코드 단위 테스트를하지 않아도된다는 것입니다.

주된 이유는 선언 및 배선 코드보다 더 많지 않아야한다는 것입니다. Peter Porfy가 이미 말했듯이, 코드는 통합 테스트에서 테스트되어야합니다.

global.asax에서 단위 테스트 할 가치가있는 논리를 발견하면 아마 그것을 배제하고 해당 클래스를 개별적으로 테스트해야합니다.

관련 문제