다음을 통해 공유


Visual Studio ALM용 테스트 도구에 대한 문제 해결

코드를 테스트할 때 특정 조건으로 인해 오류 또는 경고가 발생하거나 테스트가 실패할 수 있습니다. 이 항목에서는 이러한 조건에 대해 설명하고 문제를 해결하는 단계를 보여 줍니다.

테스트 실행 문제 해결

테스트가 실행되지 않게 하는 조건을 추적해 보면 테스트 파일이나 테스트 실행에 필요한 기타 파일을 배포할 수 없는 문제가 원인인 경우가 많습니다.

  • 원격 테스트. 원격 테스트의 경우 원격 컴퓨터와 통신하는 데 관련된 문제가 원인일 수도 있습니다. 테스트 수준에서 발생하는 이러한 문제 및 기타 오류는 테스트 실행 문제 해결을 참조하십시오.

  • ASP.NET 단위 테스트. ASP.NET 단위 테스트가 IIS 프로세스에서 실행 중인 경우 보안을 위해 ASP.NET 프로세스를 프로세스 ID가 다른 기본이 아닌 사용자로 실행할 수 있습니다. 이러한 경우 테스트 실행이 실패할 수 있습니다.

  • 웹 테스트 문제 해결. 웹 테스트를 실행할 때 다양한 오류가 발생할 수 있습니다. 데이터 바인딩 특성 누락, 보안 설정 문제 또는 방화벽 외부의 웹 사이트 액세스 등의 문제로 인해 이러한 오류가 발생할 수 있습니다. 자세한 내용은 웹 성능 테스트 문제 해결을 참조하십시오.

  • 부하 테스트 문제 해결. 부하 테스트를 실행할 때 다양한 오류가 발생할 수 있습니다. 부하 테스트 데이터베이스 문제, 부하 테스트에 설정된 카운터, 잘못 구성된 테스트 에이전트 및 컨트롤러 또는 부하 테스트에 포함된 테스트 중 하나로 인해 이러한 오류가 발생할 수 있습니다. 자세한 내용은 부하 테스트 문제 해결을 참조하십시오.

강력한 이름의 어셈블리에 다시 서명

단위 테스트를 실행하면 이진 파일의 코드가 테스트됩니다. 해당 이진 파일을 계측하여 이러한 테스트가 실행될 때 코드 검사 정보를 수집할 수 있습니다. 자세한 내용은 방법: 코드 검사 데이터 가져오기를 참조하십시오. 계측 프로세스를 통해 코드 검사 정보를 생성하는 코드를 이진 파일에 추가하게 됩니다.

테스트하는 이진 파일이 강력한 이름의 어셈블리인 경우 계측으로 인해 코드가 수정되어 서명이 무효화됩니다. 따라서 Visual Studio에서는 계측 단계 직후 어셈블리에 자동으로 다시 서명합니다. 강력한 이름의 어셈블리에 대한 자세한 내용은 강력한 이름의 어셈블리를 참조하십시오.

다양한 조건으로 인해 다시 서명하지 못할 수 있습니다. 이러한 조건을 해결하는 방법에 대한 자세한 내용은 어셈블리 계측 및 다시 서명을 참조하십시오.

코드 검사 데이터와 VSPerfMon.exe

코드 검사 데이터를 수집하는 테스트를 실행하면서 VSPerfMon.exe를 동시에 실행하면 다음과 같은 상황이 발생합니다.

  • TRACE 또는 SAMPLE 옵션을 사용하여 VSPerfMon을 실행하는 경우 테스트를 동시에 실행할 수 없으며 테스트 실행 정보 페이지에 오류가 보고됩니다.

  • COVERAGE 옵션을 사용하여 VSPerfMon.exe를 실행하는 경우 VSPerfMon.exe 프로세스가 중지됩니다.

두 경우 모두 VSPerfMon.exe와 코드 검사 데이터를 수집하는 테스트를 동시에 실행하지 않으면 문제가 해결됩니다. VSPerfMon.exe 도구에 대한 자세한 내용은 VSPerfMon을 참조하십시오.

이러한 문제가 발생하는 조건

VSPerfMon이 실행되는 가장 일반적인 경우는 다음과 같습니다.

  • 테스트를 실행하는 Visual Studio 인스턴스 이외의 인스턴스에서 프로파일링 세션을 시작했습니다.

  • VSPerfMon.exe를 직접 실행하거나 래퍼인 VSPerfCmd.exe를 사용하여 코드 검사 또는 프로파일링 데이터를 수집하고 있습니다.

코드 검사 데이터가 제대로 표시되지 않는 경우

테스트에서 코드 검사 데이터를 수집하도록 요청했지만 데이터가 표시되지 않거나 예상과 다르게 표시되는 경우 다음과 같은 상황 중 하나에 해당할 수 있습니다.

  • 코드 검사 데이터가 표시되지 않는 경우. 테스트 실행 도중 COM DLL 등의 특정 이진 파일이 테스트 배포 디렉터리가 아닌 원래 위치에서 로드되었습니다. 이러한 이진 파일은 원위치에서 계측해야 합니다. 이렇게 하지 않으면 테스트 실행이 성공하고 실행 수준 경고가 발생하지 않더라도 코드 검사 데이터가 수집되지 않습니다. 자세한 내용은 계측 폴더 선택을 참조하십시오.

  • 코드 검사에 강조 표시가 나타나지 않는 경우. 테스트를 실행하고 코드 검사 데이터를 수집한 다음 테스트 결과를 보면 Visual Studio에서 테스트 실행 도중 테스트된 코드가 소스 코드 파일에서 강조 표시됩니다. 검사된 코드, 검사되지 않은 코드 및 부분적으로 검사된 코드를 나타내는 색을 선택할 수 있습니다. 이러한 강조 표시가 일부 또는 전부 나타나지 않는 경우 선택된 색이 소스 코드 파일의 배경색과 다른지 확인하십시오. 강조 표시 색을 선택하는 데 대한 자세한 내용은 방법: 코드 검사 데이터 가져오기에서 "코드 검사 데이터 표시 변경" 단원을 참조하십시오.

  • 코드 검사 데이터가 제대로 병합되지 않는 경우. ASP.NET 테스트 실행이 하나 이상 포함된 결과를 병합할 수 있지만, 코드 검사 결과 창에서는 ASP.NET 데이터가 병합 결과 아래에 병합된 단일 노드가 아닌 구별된 노드로 표시됩니다.

  • 병합된 코드 검사 데이터 중 일부가 표시되지 않는 경우. 코드 검사 데이터를 병합한 후 디스크에 XML 파일로 내보낼 수 있습니다. 이 파일을 다시 가져온 다음 추가 데이터와 병합하면 일부 통계가 표시되지 않습니다.

  • 코드 검사 데이터를 가져올 수 없는 경우. 코드 검사 데이터를 가져오려면 Visual Studio에서 디스크에 있는 특정 파일을 찾을 수 있어야 합니다.

  • 계측된 이진 파일을 덮어쓴 경우. 수동 테스트 도중 현재 실행 중인 프로그램에서 코드 검사 데이터를 수집하려고 하는 경우입니다. Ctrl+F5를 눌러 해당 프로그램을 시작하면 프로그램의 이진 파일이 다시 빌드됩니다. 이때 계측된 이진 파일을 덮어쓰게 되므로 코드 검사 데이터를 수집할 수 없습니다.

코드 검사 데이터 수집에 대한 일반적인 내용은 방법: 코드 검사 데이터 가져오기를 참조하십시오.

참고 항목

작업

방법: 코드 검사 데이터 병합

웹 성능 테스트 문제 해결

부하 테스트 문제 해결

개념

병합된 코드 검사 데이터 작업