빌드 프로세스에서 테스트 실행

Team Foundation Build를 사용하여 자동화된 테스트를 실행하고 빌드 프로세스의 일부로 테스트에 대한 코드 변경 사항의 영향을 분석할 수 있습니다.예를 들어 정기적으로 예약된 팀의 BVT(빌드 확인 테스트) 실행으로 사용할 빌드 프로세스를 정의할 수 있습니다.자동화된 테스트를 실행하고 사용자 지정 빌드 프로세스에서 테스트 관련 작업을 수행할 수도 있습니다.

[!참고]

빌드 프로세스의 일부로 응용 프로그램을 배포하려면 빌드-배포-테스트 워크플로 및 랩 환경을 사용해야 합니다.그런 다음 자동화된 테스트를 워크플로의 일부로 실행하거나 워크플로가 완료된 후 테스트를 개별적으로 실행할 수 있습니다.자세한 내용은 자동화된 빌드-배포-테스트 워크플로 설정을 참조하십시오.

항목 내용

  • 빌드 프로세스에서 테스트 실행 준비

  • 필요한 권한

  • 테스트 실행을 사용하여 자동화된 테스트 실행

  • Test Runner 선택하며 구성합니다.

    • Visual Studio Test Runner를 사용하여 테스트 실행

    • MSTest를 사용하여 테스트 실행

  • 일시적으로 테스트 비활성화

  • 테스트 영향 분석 사용

  • 타사 단위 테스트 프레임워크 구성

  • 사용자 지정 빌드 프로세스에서 테스트 실행

  • 자세한 내용

빌드 프로세스에서 테스트 실행 준비

빌드 프로세스에서 테스트를 실행하기 전에 먼저 테스트와 빌드 시스템을 준비해야 할 수 있습니다.

사용자 테스트 준비: 솔루션과 테스트 파일이 버전 제어로 체크 인되었는지 확인합니다.자세한 내용은 버전 제어 사용를 참조하십시오.

테스트 범주화 및 우선 순위화(선택적 요소): 테스트에 범주와 우선 순위를 할당한 다음 빌드를 실행할 때 이러한 특성에 필터를 적용할 수 있습니다.예를 들어 CI라는 테스트 범주를 만든 다음 연속 통합 빌드에서 이 범주를 지정할 수 있습니다.빌드 확인 테스트를 위해 bvt라는 다른 범주를 만든 다음 야간 빌드와 같은 예약된 빌드에서 이 범주를 지정할 수도 있습니다.자세한 내용은 테스트 범주를 정의하여 테스트 그룹화, TestCategoryAttributePriorityAttribute을 참조하십시오.

준비 서버를 빌드: 특정 종류의 테스트는 특별히 구성 빌드 서버에서 빌드 에이전트 에서만 실행할 수 있습니다.예를 들어 코딩 된 UI 테스트를 실행 하는 경우 대화형으로 실행 하도록 빌드 에이전트를 구성 해야 합니다.빌드 프로세스를 사용 하 여 테스트를 실행 하려면 먼저 사용 하려는 빌드 서버에서 실행할 수 있는지 확인 하십시오.자세한 내용은 테스트를 실행 하도록 빌드 에이전트를 사용 합니다.을 참조하십시오.

Microsoft Visual Studio다음 시나리오에 대한 빌드 서버에 설치 하는 데 필요한입니다.

  • 모든 CPP 테스트 프로젝트를 빌드하려면 설치 해야 Visual Studio Professional 또는 나중에.

  • 단위 테스트 또는 코딩 된 UI 테스트를 실행 하려면 설치 있어야 Visual Studio Professional 또는 나중에.

  • 데이터 및 진단 데이터 어댑터를 사용 하려면:

    1. 코드 검사: Visual Studio Premium 또는 나중에.

    2. 테스트 영향: Visual Studio Ultimate.

    3. IntelliTrace: Visual Studio Ultimate.

  • 빌드 컴퓨터에서 모든 현대적인 스타일 응용 프로그램을 빌드하려면: Visual Studio Ultimate 또는 Visual Studio Express for Windows 8 (빌드 서버의 운영 체제를 Windows 8 이어야 합니다).

  • 컴파일하고 가짜 어셈블리와 프로젝트에 대한 테스트를 실행 합니다. Visual Studio Ultimate.

필요한 권한

이러한 절차를 수행하려면 빌드 정의 편집 권한이 허용으로 설정되어 있어야 합니다.자세한 내용은 Team Foundation Server 권한을 참조하십시오.

자동화된 테스트 실행

하나를 수행 하거나 더 많은 테스트를 실행 하 여 기반으로 빌드에 기본 템플릿.각 실행의 경우 다음과 같은 설정을 지정할 수 있습니다.

  • 실행할 테스트

  • 테스트를 실행하는 데 사용되는 설정

  • 테스트가 실패할 때 빌드가 실패할지 여부

기본 서식 파일을 기반으로 하는 빌드 프로세스의 자동화 된 테스트를 실행 하려면

  1. 메뉴 모음에서 보기, 팀 탐색기를 선택합니다.

  2. 팀 탐색기에서 홈 아이콘을 선택한 후 빌드 아이콘빌드를 선택합니다.

  3. 빌드 페이지에서 새 빌드 정의를 선택하거나 사용자가 선택한 빌드 또는 빌드 정의의 바로 가기 메뉴를 열고 빌드 정의 편집을 선택합니다.

    빌드 정의 창이 나타납니다.

  4. 빌드 정의의 프로세스 탭에서 기본 노드를 확장합니다.

  5. 선택 된 자동화 된 테스트 확인란을 선택한 다음 줄임표 단추 (...)를 선택 합니다.

    자동화된 테스트 대화 상자가 나타납니다.

  6. 다음 단계 중 하나를 수행합니다.

    • 테스트 집합을 추가하려면 추가를 선택합니다.

    • 테스트 집합을 수정하려면 해당 항목을 선택한 후 편집을 선택합니다.

    테스트 추가/편집 대화 상자가 나타납니다.

  7. (선택 사항) 테스트 실행의 이름을 지정하십시오.이 이름은 빌드 결과 창에 표시됩니다.이름을 지정하지 않으면 이름이 자동으로 생성됩니다.

  8. 이 실행에 포함된 테스트 중 어느 하나라도 실패할 경우 빌드가 실패하도록 하려면 테스트 실패 시 빌드 실패 확인란을 선택합니다.이 확인란을 선택 취소한 경우 테스트가 실패하면 완료된 빌드가 부분적으로 성공 상태로 분류됩니다.

  9. Test Runner를 선택합니다.나타나는 옵션을 사용하여 Test Runner가 작동하는 방식을 지정합니다.자세한 내용은 Test Runner 선택 및 구성을 참조하십시오.

Test Runner 선택 및 구성

빌드 프로세스를 정의하는 경우에 필요한 기능을 제공하는 Test Runner를 선택합니다.

기능

Visual Studio Test Runner

MSTest

Microsoft.VisualStudio.TestTools.UnitTesting 프레임워크에서 작성된 단위 테스트를 실행합니다.

코딩된 UI , 제네릭 및 순서가 지정된 테스트 실행

코드 검사 데이터 수집

NUnit, xUnit 등과 같은 다양한 프레임워크에서 작성된 단위 테스트를 실행합니다.

아니요

네이티브(예: C++) 이진 파일에서 단위 테스트를 실행합니다.

아니요

Windows 스토어 응용 프로그램에서 단위 테스트를 실행합니다.

아니요

64비트 테스트 실행

참고참고
MSTest에서는 플랫폼으로 지정되었으며 Any CPU로 컴파일된 64비트 테스트를 이진 파일로 실행할 수 있습니다.

아니요

Fakes 프레임워크 개체에 종속된 테스트를 실행합니다.

.NET Framework 응용 프로그램에서 테스트 fake 프레임워크를 사용하여 대리자 기반 테스트 스텁 및 shim을 만드는 자세한 내용은 Microsoft Fakes를 사용하여 테스트 중인 코드 격리를 참조하십시오.

아니요

데이터베이스 테스트 데이터를 생성하고 데이터베이스 단위 테스트 실행

아니요

테스트 영향 분석 데이터 수집

아니요

부하 및 웹 테스트 실행

아니요

[!참고]

특별히 구성 하는 빌드 서버에서 빌드 에이전트에 대해서만 이러한 기능 중 일부입니다.자세한 내용은 테스트를 실행 하도록 빌드 에이전트를 사용 합니다.을 참조하십시오.

테스트 실행에 필요한 기능을 이해하고 나면 Test Runner를 선택합니다.

  • Visual Studio Test Runner

  • 테스트 설정 파일을 사용한 MSTest

  • 메타데이터 파일을 사용한 MSTest

ms253138.collapse_all(ko-kr,VS.110).gifVisual Studio Test Runner를 사용하여 테스트 실행

Visual Studio Test Runner를 사용 하 여 기본 템플릿을 기반으로 하는 빌드 프로세스에서 테스트를 실행 하

  1. 팀 탐색기에서 빌드를 연 다음 빌드 정의를 추가하거나 편집합니다.

    프로세스 페이지에서 기본을 확장하고 자동화된 테스트를 선택합니다.줄 끝에 줄임표 단추 (...)를 선택 하 고 선택 하려면 추가 또는 편집 테스트 소스입니다.

  2. 테스트 실행 추가/편집 대화 상자의 Test runner에서 Visual Studio Test Runner를 선택합니다.

  3. 테스트 어셈블리 파일 사양

    실행할 테스트를 포함하는 이진 파일을 지정합니다.빌드 에이전트가 빌드 에이전트의 작업 디렉터리에 있는 binaries 하위 디렉터리에서 *test*.dll과 일치하는 모든 .dll 파일을 재귀적으로 검색하도록 하려면 기본값(**\*test*.dll)을 그대로 둡니다.또는 파일 사양을 사용자의 필요에 맞게 수정할 수도 있습니다.

  4. 코드 검사 데이터를 수집하고 게시하기 위한 테스트를 실행하려면 옵션코드 검사 사용을 설정합니다.

    또한 사용자 지정 옵션을 사용하여 .runsettings 파일을 지정할 수 있습니다.자세한 내용은 코드 검사 분석 사용자 지정을 참조하십시오.

  5. 텍스트 실행을 위한 대상 플랫폼 선택 메뉴에서 32비트 이진 파일을 테스트하려면 x86 또는 64비트 이진 파일을 테스트하려면 x64를 선택합니다.

  6. 실행되는 테스트 기준을 지정할 수 있습니다.

ms253138.collapse_all(ko-kr,VS.110).gifVisual Studio Test Runner에서 실행되는 테스트 기준 지정

실행되는 테스트를 필터링하는 이름/값 쌍을 지정할 수 있습니다.테스트 범주와 우선 순위 특성을 사용하여 테스트를 구성하고 우선 순위를 지정하는 경우 TestCategory 및 우선 순위 이름을 사용하여 실행 중인 테스트를 필터링할 수 있습니다.

다음 형식 중 하나로 테스트 범주를 지정할 수 있습니다.

  • 포함할 단일 이름/값 쌍을 지정합니다. 예를 들어 bvt라는 테스트 범주가 있는 경우테스트 사례 필터를 TestCategory=bvt로 설정하여 이 범주에서만 테스트를 실행합니다.

  • |("Or" 연산자)와 !("Not" 연산자)를 사용하여 여러 테스트 범주를 지정합니다. 예를 들어 TestCategory=quick||TestCategory=gui를 지정하여 빠른 범주에 속하는 테스트와 gui 범주에 속하는 테스트를 실행할 수 있습니다.

ms253138.collapse_all(ko-kr,VS.110).gifMSTest를 사용하여 테스트 실행

Mstest를 사용 하 여 기본 서식 파일을 기반으로 하는 빌드 프로세스에서 테스트를 실행 하려면

  1. 테스트 실행을 통해 자동화된 테스트를 실행하고 다른 테스트 작업을 수행한 후 테스트 실행 추가/편집 대화 상자의 Test Runner에서 다음을 선택합니다.

    • MSTest.exe Runner

      실행할 테스트를 포함하는 이진 파일을 지정합니다.빌드 에이전트가 빌드 에이전트의 작업 디렉터리에 있는 binaries 하위 디렉터리에서 *test*.dll과 일치하는 모든 .dll 파일을 재귀적으로 검색하도록 하려면 기본값(**\*test*.dll)을 그대로 둡니다.또는 파일 사양을 사용자의 필요에 맞게 수정할 수도 있습니다.

      (선택 사항) 테스트가 실행되는 방식을 구성하려면 테스트 설정 파일을 지정합니다.자세한 내용은 Visual Studio 테스트를 위한 테스트 설정 지정을 참조하십시오.

    • MsTest 테스트 메타데이터 파일(사용되지 않음)

      이 옵션을 선택하는 경우 찾아보기를 선택하여 사용할 테스트 메타데이터 파일을 찾아 지정합니다.그런 다음 이 VSMDI 파일에 있는 모든 테스트 실행 확인란을 선택된 상태로 두거나, 이 확인란의 선택을 취소하고 실행할 테스트 목록에서 테스트를 하나 이상 선택할 수 있습니다.

      [!참고]

      테스트 목록은 사용되지 않습니다.자세한 내용은 테스트 범주를 정의하여 테스트 그룹화을 참조하십시오.

  2. 기준/인수 탭을 선택합니다.

  3. 실행할 테스트를 범주를 기준으로 필터링할 수 있습니다.

    다음 형식 중 하나로 테스트 범주를 지정할 수 있습니다.

    • 포함하거나 제외할 단일 테스트 범주 지정: 예를 들어 bvt라는 테스트 범주가 있는 경우이 매개 변수를 bvt로 설정하여 이 범주에 속하는 테스트만 실행하거나, 이 매개 변수를 !bvt로 설정하여 이 범주에 속하는 테스트를 제외한 모든 테스트를 실행할 수 있습니다.

    • &("And" 연산자)와 !("Not" 연산자)를 사용하여 여러 테스트 범주를 지정합니다. 지정: 예를 들어, quick&gui&!deep을 지정하여 quick 및 gui 범주에 속하지만 deep 범주에는 속하지 않는 테스트만을 실행할 수 있습니다.

    • |("Or" 연산자)와 !("Not" 연산자)를 사용하여 여러 테스트 범주 지정: 예를 들어 quick|gui|!deep을 지정하여 quick 범주에 속하는 테스트, gui 범주에 속하는 테스트 및 deep 범주에 속하지 않는 모든 테스트를 실행할 수 있습니다.

  4. (선택 사항) 실행할 테스트를 우선 순위를 기준으로 필터링합니다.

    팁

    테스트에 우선 순위를 지정하는 경우 이 매개 변수를 사용하여 엄격한 테스트와 빠른 빌드 사이의 균형을 보다 효과적으로 조정할 수 있습니다.

    최소 테스트 우선 순위최대 테스트 우선 순위보다 작거나 같은 양의 정수로 설정합니다. 최소값을 적용하지 않으려면 -1을 설정합니다.

    최대 테스트 우선 순위최소 테스트 우선 순위보다 크거나 같은 양의 정수로 설정합니다. 최대값을 적용하지 않으려면 -1을 설정합니다.

  5. 확인을 선택합니다.

일시적으로 테스트 비활성화

테스트가 포함된 테스트 집합을 삭제하지 않고 일시적으로 테스트를 비활성화해야 하는 경우에는 고급 노드를 확장하고 테스트 사용 안 함True로 설정합니다.테스트를 다시 활성화하려면 값을 다시 False로 설정합니다.

테스트 영향 분석 사용

테스터와 개발자는 완료된 빌드에 포함된 코드 변경 내용이 테스트에 어떤 영향을 주었는지 알고 있어야 합니다.빌드에서 테스트 영향 분석을 사용하면 시스템에서는 코드 변경 내용이 테스트에 미친 영향을 분석하고 완료된 빌드의 빌드 보고서에서 이를 보고합니다.

기본 템플릿을 기반으로 하는 빌드 프로세스에서 테스트 영향 분석을 사용 하려면

  1. 테스트 설정 파일에서 테스트 영향 분석을 구성합니다.

    자세한 내용은 방법: 코드 변경 후 실행할 테스트를 확인하기 위해 데이터 수집을 참조하십시오.

  2. 테스트 설정 파일을 사용하도록 구성된 테스트 실행을 만듭니다.

    자세한 내용은 이 항목 앞부분의 자동화된 테스트 실행을 참조하십시오.

  3. 고급 노드를 확장한 다음 테스트 영향 분석True로 설정되어 있고 테스트 사용 안 함False로 설정되어 있는지 확인합니다.

여러 테스트 실행을 정의합니다.

팀의 빌드 및 테스트 프로세스 요구 사항을 충족시키는 데 필요한 만큼 테스트 실행을 정의할 수 있습니다.예를 들어, 다음 시나리오에서는 단일 빌드에서 여러 테스트 실행을 정의해야 할 수 있습니다.

  • Visual Studio Test Runner를 사용하여 32비트와 64비트 비트의 이진 파일을 생성하는 솔루션을 테스트하려 합니다.

  • 실행할 수 있는 몇 가지 테스트에는 Visual Studio Test Runner에서 실행할 수 있으며 다른 테스트는 MSTest에서만 실행할 수 있습니다.

  • 다음과 같은 두 개의 테스트 집합이 있는 경우

    • 반드시 통과해야 하는 최우선 순위의 핵심 테스트 집합.최소 테스트 우선 순위를 2로, 최대 테스트 우선 순위를 3으로 지정하는 테스트 집합을 정의합니다.또한 테스트 실패 시 빌드 실패 확인란을 선택합니다.

    • 실행은 하되 통과하지 못하더라도 빌드를 사용할 수는 있는 덜 중요한 테스트 집합.최소 테스트 우선 순위를 2로, 최대 테스트 우선 순위를 3으로 지정하는 테스트 집합을 정의합니다.또한 테스트 실패 시 빌드 실패 확인란을 선택 취소된 상태로 둡니다.

  • 동일한 테스트 집합을 다른 테스트 설정을 사용하여 실행하려는 경우

  • 빌드하는 주요 어셈블리 집합이 코드 검사를 반드시 거치도록 하고,외부 소스의 다른 어셈블리 집합은 코드 검사를 거칠 필요가 없도록 하려는 경우.이러한 종류의 프로세스를 사용하려면 두 가지 테스트 설정 파일 그룹을 사용하도록 구성된 두 개의 테스트 집합을 사용합니다.

빌드 컨트롤러는 타사 단위 테스트 프레임 워크를 사용 합니다.

빌드 프로세스만 빌드 컨트롤러를 사용 하는 access 타사 프레임 워크 어셈블리를 제공 하는 경우에 제 3의 단위 테스트 프레임 워크를 기반으로 단위 테스트를 실행할 수 있습니다.

  1. 찾거나 필요한 경우 사용자 지정 어셈블리를 빌드 컨트롤러의 경로 지정 합니다..

  2. 필요 하다 면 매핑을 사용자 지정 어셈블리 폴더는 서버에서 로컬 작업 영역에서 폴더를 만드는 찾거나.

  3. 제 3 자 단위 테스트를 플러그 인을 얻습니다.일부는 여기에 대한 링크를 찾을 수 있습니다: 단위 테스트 플러그인 목록.

  4. 플러그 인.vsix 파일을에.zip 파일을 이름을 바꿉니다.예를 들어, 다음과 같이 명령 프롬프트를 사용 하십시오.

    C:\Downloads>ren NUnitTestAdapter.vsix NUnitTestAdapter.zip
    
  5. 2 단계에서 매핑한 로컬 작업 영역 폴더에.zip 파일의 내용을 압축을 풉니다.

  6. 파일을 체크 인.

    팁

    타사 바이너리 파일을 버전 제어에서 사용 하기 위한 전략을 참조 하십시오. 코드를 빌드하지 않은 제 3 자 바이너리 활용.

Visual Studio 2012.1 자동화 팀 빌드 정의에 포함 된 타사 단위 테스트 프레임 워크에 대한 개선을 포함 됩니다.

주의 정보주의

NuGet 패키지 빌드 정의 향상을 포함 하는 프레임 워크를 보장 하는 타사 단위 테스트 프레임 워크에 대한 최신 버전을 설치 해야 합니다.

빌드 컨트롤러-[Visual Studio 2012.1]은 제 3의 단위 테스트 프레임 워크를 사용 합니다.

  1. 솔루션 탐색기에서 테스트 프로젝트에 바로 가기 메뉴를 열고 선택 NuGet 패키지 관리.

  2. NuGet 패키지 관리 대화 상자에서 왼쪽된 열 선택 온라인.

  3. 제 3의 단위 테스트 프레임 워크 및 선택 NuGet 패키지 선택 설치.

  4. 패키지 완료 후 NuGet 설치 선택 닫기.

  5. 솔루션 탐색기에서 바로 가기 메뉴에서 솔루션을 열고 선택 소스 제어에 솔루션 추가.

  6. 이제 빌드를 대기 시킬 수 있습니다 및 타사 단위 테스트 프레임 워크를 사용한 테스트를 자동으로 실행 됩니다.

사용자 지정 빌드 프로세스에서 테스트 작업

팀에서 보다 깊게 사용자 지정된 기능을 가진 빌드 프로세스를 요구하는 경우 사용자 지정 빌드 프로세스 내에서 테스트를 실행하고 다른 테스트 관련 작업을 수행할 수 있습니다.자세한 내용은 다음을 참조하십시오.

추가 정보

기본 템플릿을 기반으로 하는 빌드 프로세스 정의기본 서식 파일을 기반으로 하는 빌드 정의 만드는 방법에 대한 자세한 정보를 제공 합니다.이 항목에는 코드를 컴파일하는 동안 사용할 수 있는 플랫폼 비트 설정에 대한 정보를 포함합니다.

빌드-배포 -테스트 워크플로 지침는 빌드 프로세스를 사용하여 랩 환경에서 응용 프로그램을 배포하고 테스트를 실행하는 정보를 제공합니다.

Microsoft Test Manager에서 테스트 실행에서 테스트를 실행하는 방법에 대한 자세한 내용을 확인할 수 있습니다.

참고 항목

개념

빌드 프로세스 정의

Microsoft Test Manager에서 테스트 만들기 및 관리