본문 바로가기

Programing/테스트

[NUnit] 닷넷 환경의 테스트 주도 개발

Visual Studio 2008 환경을 사용하고 있다.

닷넷에는 [테스트] 메뉴가 존재하지만 써 보았는데 JUnit+이클립스 같이 깔끔하게 돌아가는 환경은 아니다.



테스트를 할 때마다 생기는 로그 파일이 뭔가 부담스럽다.


그래서 NUnit이라는 오픈소스프로젝트를 사용하는데 많이 이용하는 것 같다.

NUnit은 아래와 같은 GUI Runner를 제공한다.


하지만 이클립스 처럼 IDE 환경 내에서 바로 돌아가지 않아서 Visual Studio 따로 NUnit 따로 창을 두 개를 띄워서 개발을 해야 하니 뭔가 개발~테스트가 분리되어 있는 느낌이다.


NHibernate를 검토하다 보니 비주얼 스튜디오에 플러그인 할 수 있는 도구가 있어서 써보니 괜찮았다.

이름은 TestDriven.Net인데 오픈소스의 경우 Personal 버전을 사용할 수 있는 것 같았다.


주소: http://www.testdriven.net


간단한 샘플을 만들어 돌려보았다. 로켓 모양의 아이콘이 생겨서 출력 창에서 결과를 간단히 볼 수 있다.



결과는 아래와 같다.


Test With에 보면 Debugger나 NCover, NUnit 등 외부도구를 연동할 수 있다.


몇 가지 설정들...

[도구] > [옵션]에 가보면 TestDriven.Net이란 메뉴가 생겼을 것이다.


1) AnyCPU 동작 설정

AnyCPU의 경우 보통 자신의 환경에 맞춰서 32비트던 64비트로 돌아가지만, Win32나 커스텀 Dll같이 Native 라이브러리를 사용할 때 실행이 안될 수 있다. (NUnit도 nunit.exe와 nunit-x86.exe가 별도로 있다.)


2) 코드 리플렉터 설정

 .NET Reflector는 상용 애플리케이션이지만 6.8 버전의 경우 Free가 되었다고 한다. (출처)

http://codifying.wordpress.com/tag/net-reflector/ 에 가보면 Download .NET Reflector 6.8 with Visual Studio Add-in라는 링크가 있다.(드롭박스)


리플렉터 사용법


3) NUnit 버전 설정