다음을 통해 공유


방법: 스마트 장치 단위 테스트를 실행하는 동안 디버깅

업데이트: 2007년 11월

스마트 장치 단위 테스트의 테스트 코드는 데스크톱 컴퓨터가 아닌 장치나 에뮬레이터에서 실행되기 때문에 스마트 장치 단위 테스트에는 자동 디버깅이 지원되지 않습니다. 따라서 디버그 메뉴에서 디버깅 시작을 선택하거나, 테스트 뷰 창에서 선택 항목 디버그를 선택하거나, 테스트 목록 편집기 창에서 선택한 테스트 디버그를 선택하더라도 테스트가 실행만 되고 디버깅되지는 않습니다. 이 항목에서는 실행 중인 스마트 장치 단위 테스트에 직접 디버거를 연결하여 디버깅하는 방법에 대해 설명합니다.

다음 절차에서는 스마트 장치 단위 테스트를 만들고, 디버깅을 위해 장치를 준비하고, 테스트에 중단점을 추가하고, 테스트를 디버깅합니다.

참고:

다음 지침처럼 컴퓨터에서 Visual Studio 사용자 인터페이스 요소 일부에 대한 이름이나 위치를 다르게 표시할 수 있습니다. 이러한 요소는 사용하는 Visual Studio 버전 및 설정에 따라 결정됩니다. 자세한 내용은 Visual Studio 설정을 참조하십시오.

스마트 장치 단위 테스트를 실행하는 동안 디버깅하려면

  1. 테스트할 스마트 장치 응용 프로그램과 스마트 장치 단위 테스트를 만들어 테스트합니다.

    자세한 내용은 연습: 스마트 장치 단위 테스트 만들기 및 실행을 참조하십시오.

  2. 장치에 관리 디버깅을 사용하려면 Visual Studio 원격 레지스트리 편집기를 사용하여 장치 레지스트리에 다음 항목을 만듭니다.

    1. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETCompactFramework 아래에 Managed Debugger라는 새 키를 만듭니다.

    2. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETCompactFramework\Managed Debugger 아래에 이름이 AttachEnabled이고 값이 1인 새 DWORD 값을 만듭니다.

  3. 스마트 장치 단위 테스트에 System.Diagnostics.Debugger.Break() 문을 추가하여 중단점을 설정합니다.

    참고:

    코드의 중단점은 이 System.Diagnostics.Debugger.Break() 문을 따르는 경우에만 적중됩니다.

  4. 테스트를 시작합니다.

    이렇게 하려면 테스트 뷰 창에서 실행할 테스트를 마우스 오른쪽 단추로 클릭한 다음 선택 항목 실행을 클릭합니다.

  5. 테스트 호스트에서 단위 테스트에 추가한 중단점이 적중될 때까지 기다립니다. 중단점이 적중되면 장치에서 "SmartDeviceTestHost.exe에서 사용자 중단이 발생했습니다."이라는 메시지가 표시됩니다.

  6. 스마트 장치 테스트 호스트 프로세스에 연결합니다.

    1. 디버그 메뉴에서 프로세스에 연결을 클릭합니다.

    2. 전송을 스마트 장치로 변경합니다.

    3. 한정자를 테스트가 실행되고 있는 장치로 변경합니다.

    4. 사용 가능한 프로세스 목록에서 SmartDeviceTestHost.exe를 클릭합니다.

    5. 연결을 클릭합니다.

    System.Diagnostics.Debugger.Break() 문에서 실행이 일시 중지된 상태로 Visual Studio가 프로세스에 연결됩니다. 디버그 메뉴에서 계속을 클릭하거나 F5 키를 눌러 다음 중단점까지 계속 실행할 수 있습니다.

    참고:

    디버깅을 마치면 System.Diagnostics.Debugger.Break() 문과 Managed Debugger라는 레지스트리 키를 제거합니다. 이렇게 하지 않으면 테스트를 실행할 때마다 중단점 대화 상자가 표시됩니다.

참고 항목

작업

방법: 관리되는 장치 프로세스에 연결

방법: 스마트 장치 단위 테스트 만들기

기타 리소스

스마트 장치 단위 테스트 작업