2008-11-06 4 views
2

라이브러리 작동 방식을 파악하려고하고 있는데 사용자 입력 (예 : 키 누르기 또는 마우스 클릭)에 대한 응답으로 어떤 방법과 코드 행이 실행되는지 시각화하고 싶습니다. .NET에서이 작업을 수행 할 수있는 방법이 있습니까?동작과 관련된 코드를 시각화 하시겠습니까?

답변

0

NUnit 테스트에서 분석하려는 동작을 실행할 수 있으면 NCover 유틸리티를 사용하여 실행 된 코드 부분과 실행되지 않은 부분을 시각화 할 수 있습니다. 이 도움이

http://www.ncover.com/

희망!

아담

+0

방금 ​​SharpDevelop + PartCover를 사용하여이 작업을 시도했지만, "DragDrop 등록이 성공하지 못했습니다"라고 알 수없는 예외로 인해 단위 테스트 중에 초기화되지 않습니다. 어쨌든 그것은 내가보기에 좋은 해결책이 아닙니다. 실행되는 모든 코드가 아니라 특정 액션에 대한 응답으로 실행되는 코드. – Qwertie

+0

단위 테스트 UI 코드는 확실히 어려울 수 있습니다. 버튼 클릭 이벤트가 컨트롤러 클래스에서 하나의 메서드를 호출하는 것만 큼 매우 얇은 UI 레이어가 있다고 가정하면 click 이벤트 대신 컨트롤러 메서드를 단위 테스트 할 수 있습니다. 그게 니가 필요로하는 것에 더 가까워 질지, 행운을 빌어 줄거야! –

2

Pex라는 Microsoft에서 멋진, 무료 도구가있다. 일단 설치되면 방법을 마우스 오른쪽 버튼으로 클릭하고 "Pex Exploration 실행"을 선택할 수 있습니다. 코드를 분석하고 메소드의 모든 부분을 터치하는 입력을 보여줍니다.

자세한 내용은 Pex CodeDigger을 참조하십시오. 여기에 행동에 그것의 스크린 샷입니다 :

alt text http://blogs.msdn.com/blogfiles/nikolait/WindowsLiveWriter/SneakPreviewCodeDiggerTheNewPexExperienc_14A2D/DiggerTestTable_thumb.png

0

당신은 심지어 어떤 단위 테스트 프레임 워크없이 NCover 같은 코드 검사 도구를 사용할 수 있습니다. NCover를 통해 응용 프로그램을 실행하고 결과를 확인하십시오.

편집 : 오픈 소스 대안 인 PartCover을 확인할 수도 있습니다.

+0

응용 프로그램 실행의 일부 (시작/종료 제외)로만 코드 범위 탐지를 제한 할 수 있습니까? – Qwertie

+0

도구에 따라 다릅니다. NCover를 사용하면 명령 줄 스위치 (자세한 내용은 http://www.ncover.com/documentation/console/flags 참조)를 사용하여 특정 어셈블리만을 대상으로 제한 할 수 있습니다. – csgero

관련 문제