2012-10-24 1 views
17

nUnit을 사용하면 Debug.Print 문을 테스트에 추가하면 테스트 출력에 나타납니다. (최소한 Resharper 단위 테스트 창에서 수행합니다.)nant 빌드 실행시 나타날 로그 메시지를 NUnit 테스트에 어떻게 추가 할 수 있습니까?

동일한 테스트를 실행하는 nant 빌드 파일을 사용하는 경우 해당 Debug.Print 문은 표시되지 않습니다.

유닛 테스트에 nUnit 출력과 nant 출력 빌드 모두에 메시지를 추가하려면 어떻게해야합니까?

답변

23

(적어도 NUnit의 버전 용).

그렇다면 텍스트 출력을 추가 할 때마다 메시지로 어서션으로 변환하는 방법을 생각해보십시오. 테스트가 훨씬 좋아질 것입니다.

+0

일반적으로 나는 동의 하겠지만이 경우 필요한 정보는 응용 프로그램 테스트와 관련이 없으며 테스트 실행에 관련된 메타 데이터 (구체적으로 실행 경로)입니다. –

+0

그것은 그 트릭을 완벽하게했습니다! –

21

테스트 중에 NUnit3의 로깅 방법은 : TestContext 클래스를 통해 이루어집니다. 그것은 정적 Write 변종의 뗏목을 가지고 있습니다. 각각은 테스트 결과에 일반 내용을 내 보냅니다.

TestContext.Out은 로깅 정보를 테스트 결과로 내보내는 데에도 사용할 수있는 TextWriter을 산출합니다.