Share via


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

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

참고

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

Team Foundation Build로 할 수 있는 작업은 다음과 같습니다.

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

  • 자동화된 테스트 실행

  • Visual Studio Test Runner에서 실행되는 테스트 기준 지정

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

  • 테스트 영향 분석 사용

  • 여러 테스트 실행 정의

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

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

  • 자세한 내용

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

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

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

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

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

다음 시나리오에서는 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이 있는 프로젝트에 대한 테스트를 컴파일하고 실행하려면

자동화된 테스트 실행

기본 템플릿을 기반으로 빌드에서 하나 이상의 테스트 실행을 수행할 수 있습니다. 각 실행에 대해 다음과 같은 설정을 지정할 수 있습니다.

  • 실행할 테스트

  • 테스트 실행에 사용하는 설정

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

  1. 팀 탐색기에서 홈 아이콘 을 선택한 후 빌드 아이콘 빌드를 선택합니다(키보드: Ctrl+0, B).

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

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

  3. 빌드 정의의 프로세스 탭에서 자동화된 테스트 상자를 선택한 다음 줄임표 단추 (...)를 선택합니다.

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

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

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

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

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

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

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

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

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

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

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

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

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

Visual Studio Test Runner에서 실행되는 테스트 기준 지정

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

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

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

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

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

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

테스트 영향 분석 사용

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

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

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

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

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

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

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

여러 테스트 실행 정의

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

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

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

    • 반드시 통과해야 하는 최우선 순위의 핵심 테스트 집합. 최소 테스트 우선 순위최대 테스트 우선 순위가 각각 1인 테스트 집합을 정의합니다. 또한 테스트 실패 시 빌드 실패 확인란을 선택합니다.

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

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

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

타사 단위 프레임워크 사용

빌드 컨트롤러에 타사 프레임워크 어셈블리에 대한 액세스를 제공한 경우에만 빌드 프로세스가 타사 단위 테스트 프레임워크를 기준으로 단위 테스트를 실행할 수 있습니다.

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

  2. 서버의 사용자 지정 어셈블리 폴더에서 작업 영역의 로컬 폴더에 대한 매핑을 찾거나, 필요할 경우 만듭니다.

  3. 타사 단위 테스트 플러그 인을 얻습니다.

    어댑터

    언어

    Boost

    C++

    Chutzpah

    JavaScript

    Google

    C++

    MbUnit

    C#

    MSpec

    MSpec

    nUnit

    C#

    Python Tools for Visual Studio

    Python

    Silverlight

    Silverlight

    TSTestAdapter

    TypeScript

    VsNodeTest

    Node.js

    xUnit.net

    C#

    xUnit++

    C++

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

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

  6. 파일을 체크 인합니다.

    버전 컨트롤에서 타사의 이진 파일 사용 작업에 대한 전략은 코드를 빌드하지 않는 타사 이진 파일을 활용하는 방법을 참조하십시오.

[Visual Studio 2012.3]은 팀 빌드 정의에서 포함을 자동화하는 타사 단위 테스트 프레임 워크가 향상되었습니다.

경고

프레임워크에 빌드 정의 향상이 포함되었는지 확인하려면 타사 단위 테스트 프레임워크용 NuGet 패키지의 최신 버전을 설치해야 할 수 있습니다.

빌드 컨트롤러에 타사 단위 테스트 프레임워크 사용 - [Visual Studio 2012.1]

  1. 솔루션 탐색기에서 테스트 프로젝트에서 상황에 맞는 메뉴를 열고 NuGet 패키지 관리를 선택합니다.

  2. NuGet 패키지 관리 대화 상자의 왼쪽 열에서 온라인을 선택합니다.

  3. 타사 단위 테스트 프레임워크에 대한 NuGet 패키지를 선택하고 설치를 선택합니다.

  4. NuGet 패키지 설치가 완료되면 닫기를 선택합니다.

  5. 솔루션 탐색기에서 솔루션의 상황에 맞는 메뉴를 열고 소스 제어에 솔루션 추가를 선택합니다.

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

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

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

다음 단계 실행

Team Web Access를 사용하여 수동 테스트 계획

추가 작업

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

참고 항목

개념

빌드 프로세스 정의

빌드-배포-테스트 워크플로에서 자동화된 테스트 실행

기타 리소스

Microsoft Visual Studio를 사용하여 시스템 테스트 실행