2011-07-26 13 views
26

전에 NUnit을 많이 사용하지는 않았지만 콘솔 유형 방식으로 창에 텍스트를 덤프하려고했습니다.는 NUnit의 Console.WriteLine을 대체합니까?

e.g. Console.WriteLine("... some information..."); 

물론 NUnit이 작동하기 때문에 작동하지 않습니다.

일부 단위 테스트를 빌드하는 중이고 디버그 중 검사를 위해 변수 값 목록을 덤프하려고합니다. 만약 내가 이것을 인정해야한다면 엄격하게 단위 테스트가 아니지만 나는 그것을 인정하지만 편리 할 것입니다.

답변

38

콘솔 출력을 볼 수 있습니다. NUnit GUI 러너에서 "텍스트 출력"탭을 선택하기 만하면됩니다.

enter image description here

업데이트

당신이 ReSharper에서 테스트 러너를 사용하는 경우는, 콘솔 출력이 표시되어야합니다. 테스트 러너 출력 창은 테스트 실행 도구 모음에서 "연락처보기 출력"버튼을 클릭하여 표시되어 있는지 확인합니다 :

enter image description here

다음과 같이 무언가를 얻어야한다 :

enter image description here

+3

감사합니다. 이제는 nunit을 설치해야한다는 것을 알게되었습니다. 현재 프로젝트와 함께 제공된 어셈블리 참조를 통해 실행 중이며 resharper에 후크가 있습니다. – sgtz

+1

@sgtz ReSharper 테스트 러너를 통해 NUnit 테스트를 실행하고 있습니까? 그렇다면 출력은 테스트 러너의 출력 창에 있어야합니다. 내 업데이트를 참조하십시오. –

+1

+1 예. 이제 작동 중입니다. 타이! – sgtz

29

대신 System.Diagnostics.Debug.WriteLine을 사용해보세요.

+0

+1 또한 작동합니다. 네. – sgtz

+0

이것은 디버그 모드에서만 적용됩니다. 릴리스 모드에서는 작동하지 않습니다. –

+0

@ M.Hassan https://stackoverflow.com/q/37668476/1394393 – jpmc26

10

는 또한 Test Explorer 창에서 아래 Test 창에서 링크 Output이, 비주얼 스튜디오 2017에서

TestContext.Out.WriteLine("Message to write to log"); 
2

과 디버깅을 위해 테스트 결과 출력에 쓸 수 있습니다. 이것은 유닛 테스트 중에 콘솔에 쓰여지는 것을 가져옵니다.

관련 문제