테스트 배포 개요
업데이트: 2007년 11월
Visual Studio Team System Test Edition에서는 테스트를 만들거나 생성한 폴더나 개별 배포 폴더에서 실행할 수 있습니다. 테스트 배포의 활성화 여부는 테스트 실행 구성을 설정하여 선택할 수 있습니다. 자세한 내용은 방법: 테스트 배포 구성을 참조하십시오.
테스트 배포를 통해 활성화되는 이러한 구분을 통해 테스트를 보다 명확하게 실행하여 정확한 테스트 결과를 얻을 수 있습니다. 이 배포 단계에서는 테스트 실행 전에 배포 항목(폴더 및 파일)이 Visual Studio Test Edition에서 배포 폴더로 복사됩니다. Visual Studio Test Edition에서 복사되는 파일 형식은 다음과 같습니다.
테스트 이진 파일(예: 테스트 프로젝트에서 빌드된 어셈블리) 또는 제네릭 테스트의 이진 파일
모든 종속 어셈블리 자세한 내용은 Test Edition의 문제 해결을 참조하십시오.
XML 파일 및 구성 파일과 같은 테스트가 종속되도록 지정한 파일 복사할 추가 배포 항목을 지정하고 배포 폴더를 변경하는 두 작업을 모두 수행하여 배포를 구성할 수 있습니다. 자세한 내용은 방법: 테스트 배포 구성을 참조하십시오.
참고: 테스트 배포의 활성화 여부에 따라 테스트 파일, 종속 어셈블리, 명시적으로 지정된 파일 등의 모든 항목을 이 목록에 배포할지 여부가 결정됩니다. 테스트 배포의 활성화 및 비활성화에 대한 자세한 내용은 방법: 테스트 배포 구성을 참조하십시오.
배포 단계를 비롯하여 테스트가 실행될 때 수행되는 모든 단계에 대한 자세한 내용은 테스트 실행의 단계를 참조하십시오.
두 가지 배포 종류
로컬과 원격 두 종류의 배포가 있습니다.
로컬 테스트 실행. 기본적으로 테스트는 Visual Studio가 설치되어 있는 컴퓨터에서 로컬로 실행됩니다. 이 경우 배포 항목과 테스트 이진 파일이 로컬 배포 폴더로 복사되어 그 위치에서 실행됩니다. 자세한 내용은 로컬 배포 폴더를 참조하십시오.
원격 테스트 실행. 원격 실행에는 에이전트와 컨트롤러가 사용됩니다. 먼저 배포 항목이 로컬 배포 폴더, 특히 현재 테스트 실행에 대한 [Out] 폴더로 복사됩니다. 로컬 배포 폴더를 참조하십시오. 그런 다음 컨트롤러 컴퓨터의 배포 폴더로 복사되고 그 배포 폴더에서 하나 이상의 에이전트 컴퓨터의 배포 폴더로 복사됩니다. 마지막으로, 에이전트 컴퓨터에서 테스트가 실행되고 결과가 반환됩니다. 에이전트와 컨트롤러에 대한 자세한 내용은 컨트롤러, 에이전트 및 Rig를 참조하십시오.
로컬 배포 폴더
솔루션의 테스트를 실행하면 Visual Studio에서 TestResults라는 폴더 아래에 솔루션 계층 구조와 함께 배포 파일이 만들어집니다. TestResults 폴더가 없으면 Visual Studio에서 폴더가 만들어집니다.
참고: |
---|
Visual Studio IDE를 사용하는 경우 이 폴더는 솔루션 폴더 바로 아래 만들어지고, Visual Studio IDE를 사용하지 않을 경우에는 현재 폴더 아래에 TestResults 폴더가 만들어집니다. |
테스트 실행을 시작할 때마다 Visual Studio Test Edition에서 해당 테스트 실행에 대해서만 사용할 폴더 집합이 TestResults 폴더 아래에 만들어집니다. 이 폴더 집합 중 최상위 폴더의 이름은 테스트 실행에 따라 지정됩니다. 다음 그림의 예제에서는 TestResults 아래의 첫 번째 폴더 이름이 "<사용자 이름>@<컴퓨터 이름><날짜> <시간>"입니다. 이 이름은 "<사용자 이름>@<컴퓨터 이름><날짜> <시간>"이라는 테스트 실행의 이름에 따라 지정됩니다.
로컬 테스트 실행에 대한 배포 폴더
위 그림에서 보여준 것처럼 ClassLibrary1 솔루션에는 ClassLibary1과 TestProject1 두 개의 프로젝트가 있습니다. 테스트가 실행되었기 때문에 이 솔루션에는 TestResults라는 폴더도 있습니다. TestResults 폴더에는 각 테스트 실행에 대해 테스트 결과가 하나씩 포함됩니다. 이 테스트 결과 파일의 이름은 테스트 실행에 따라 지정되며 .trx 확장명으로 지정됩니다.
다른 폴더는 아래에 설명된 것처럼 TestResults 폴더 아래 만들어집니다.
테스트 실행 폴더. 시작된 각 테스트 실행에 대한 폴더가 TestResults 폴더 바로 아래에 하나씩 있습니다. 테스트 결과 창과 테스트 실행 창에 표시된 것과 같이 테스트 실행 폴더 이름은 테스트 실행 이름과 동일합니다. 테스트 실행에 대한 기본 형식의 이름은 <사용자 이름>@<컴퓨터 이름> <날짜> <시간>입니다. 테스트 실행 폴더에는 테스트 실행의 단계의 설명과 같이 테스트가 실행되기 전과 실행된 후에 실행되는 정리 스크립트도 있습니다.
Out 폴더 및 하위 폴더. 각 테스트 실행 폴더에는 Out이라는 폴더가 하나씩 있습니다. Out 폴더는 테스트 실행의 단계에서 설명하는 실제 배포 폴더입니다. 즉, 어셈블리와 테스트 실행에 필요한 그 밖의 파일이나 폴더는 테스트 실행이 시작될 때마다 <솔루션>\TestResults\<테스트 실행>\Out 폴더로 복사됩니다.
In 폴더 및 하위 폴더. 각 테스트 실행 폴더에는 In이라는 폴더가 있습니다. 생성되는 테스트 결과는 테스트 실행의 단계의 설명과 같이 In 폴더 또는 하위 폴더에 저장됩니다. 예를 들어 코드 검사 결과는 테스트가 실행된 컴퓨터에 따라 이름이 지정된 하위 폴더의 data.coverage라는 파일에 저장됩니다.
보안 정보: 스마트 장치 호스트에서 테스트를 실행하면 장치의 In 폴더에 있는 파일이 데스크톱으로 다시 복사됩니다. 신뢰할 수 없는 파일이 실행되지 못하도록 하기 위해 Visual Studio에서는 .txt 또는 .log로 끝나지 않는 모든 파일에 .txt를 추가합니다.
테스트 호스트 선택
배포 항목을 복사하고 나면 테스트 실행 구성에서 선택한 테스트 호스트에서 테스트가 실행됩니다. 대부분의 테스트는 배포 폴더의 기본 Visual Studio 테스트 호스트에서 실행되지만, 특정 테스트 종류는 아래 설명된 것처럼 다른 테스트 호스트에서 실행해야 합니다.
ASP.NET 호스트. IIS 또는 ASP.NET 개발 서버 프로세스에서 실행해야 하는 ASP.NET 단위 테스트 등의 테스트를 실행하는 경우에는 이 호스트를 선택합니다. 자세한 내용은 ASP.NET 단위 테스트 개요를 참조하십시오.
스마트 장치 호스트. 스마트 장치 또는 에뮬레이터에서 실행해야 하는 스마트 장치 단위 테스트 등의 테스트를 실행하는 경우에는 이 호스트를 선택합니다. 자세한 내용은 스마트 장치 단위 테스트 개요를 참조하십시오.
테스트 호스트를 선택하는 방법에 대한 자세한 내용은 방법: 테스트 실행 구성 지정을 참조하십시오.
테스트 배포 문제 해결
다음과 같은 문제로 인해 파일이 배포되지 않을 수 있습니다.
파일을 찾을 수 없는 경우. 절대 경로를 사용하여 파일을 지정한 경우 해당 경로가 있는지 확인하십시오. 또한 절대 경로를 사용하여 파일을 소스 제어에 체크 인했는지 확인하십시오.
상대 경로를 사용한 경우 루트 위치가 정상적인지 확인하십시오. 경로에 환경 변수가 포함된 경우 변수가 제대로 설정되어 있어야 합니다. Debug\bin\program.xls와 같이 구성에 따라 달라지는 디렉터리가 포함된 상대 경로를 사용하는 경우 현재 다른 구성을 사용하여 정상적인 위치에서 파일을 찾을 수 없게 되는지 확인하십시오.
액세스가 거부되는 경우. 배포 폴더로 복사해야 하는 파일에 액세스할 수 있는지 확인하십시오.
파일이 네트워크 공유에 있는 경우. 파일이 네트워크 공유에 있어서 파일을 복사할 수 없는 경우 파일을 로컬 컴퓨터에 복사하고 새 위치에 있는 파일이 배포되도록 지정합니다. 그런 다음 테스트를 다시 실행합니다.