다음을 통해 공유


빌드 시스템을 사용하여 테스트 구성

업데이트: 2011년 5월

테스트를 실행하고 테스트에 대한 코드 변경 내용의 영향을 분석하는 빌드 프로세스를 정의할 수 있습니다. 예를 들어 정기적으로 예약된 팀의 BVT(빌드 확인 테스트) 실행으로 사용할 빌드 프로세스를 정의할 수 있습니다.

항목 내용

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

  • DefaultTemplate.xaml 기반의 빌드에서 테스트 작업

    • 필요한 권한

    • 자동화된 테스트 실행

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

    • 테스트 영향 분석 사용

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

  • 자세한 내용

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

테스트 준비: 빌드 프로세스에서 실행할 테스트가 사용자 인터페이스를 표시하지 않는지 확인합니다. 일반적으로 UI를 표시하는 테스트는 빌드 시스템이 실행되는 데 적합하지 않습니다. 빌드 시스템을 사용하여 UI를 표시하는 테스트를 실행해야 하는 경우에는 대화형으로 실행되는 컴퓨터에서 빌드 정의를 실행해야 합니다. 자세한 내용은 빌드 컴퓨터 구성을 참조하십시오.

빌드 컴퓨터 준비: 특정 종류의 테스트는 특별히 구성된 빌드 컴퓨터의 빌드 에이전트만 실행할 수 있습니다. 빌드 프로세스를 사용하여 테스트를 실행하기 전에 사용할 계획인 빌드 컴퓨터에서 테스트를 실행할 수 있는지 확인합니다. 자세한 내용은 빌드 에이전트를 사용하여 테스트 실행을 참조하십시오.

DefaultTemplate.xaml 기반의 빌드에서 테스트 작업

하나 이상의 자동화된 테스트 실행을 수행하고 테스트에 대한 코드 변경 내용의 영향을 분석하도록 빌드를 설계할 수 있습니다.

필요한 권한

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

자동화된 테스트 실행

빌드에서 하나 이상의 자동화된 테스트 실행을 수행하도록 디자인할 수 있습니다. 설정한 각 테스트 실행에 대해 다음과 같은 설정을 지정할 수 있습니다.

  • 실행할 테스트

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

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

빌드에서 자동화된 테스트를 실행하도록 구성하려면

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

  2. 자동화된 테스트 상자를 선택한 다음 이 상자에서 줄임표 단추(...)를 클릭합니다.

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

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

    • 테스트 실행을 추가하려면 추가를 클릭합니다.

    • 기존 테스트 실행을 수정하려면 해당 테스트 실행을 클릭하고 편집을 클릭합니다.

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

  4. 테스트를 실행하는 데 사용할 방법을 클릭합니다.

    • 테스트 어셈블리 파일 사양(권장)

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

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

    • 테스트 메타데이터 파일 (.vsmdi)

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

      자세한 내용은 테스트 목록을 정의하여 테스트 그룹화를 참조하십시오.

  5. 조건/인수 탭을 클릭합니다.

  6. (선택 사항) 실행할 테스트를 범주를 기준으로 필터링합니다.

    자세한 내용은 이 항목 뒷부분의 테스트 범주 지정을 참조하십시오.

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

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

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

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

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

  9. 확인을 클릭합니다.

테스트 범주 지정

테스트 범주를 사용하여 테스트 실행 중 실행되는 테스트를 필터링할 수 있습니다.

테스트 분류

Test Professional을 사용하여 테스트에 범주를 할당할 수 있습니다. 예를 들어 CI라는 테스트 범주를 만든 다음 연속 통합 빌드에서 이 범주를 지정할 수 있습니다. 빌드 확인 테스트를 위해 bvt라는 다른 범주를 만든 다음 야간 빌드와 같은 예약된 빌드에서 이 범주를 지정할 수도 있습니다.

자세한 내용은 테스트 범주를 정의하여 테스트 그룹화를 참조하십시오.

테스트 실행에 대한 테스트 범주 지정

다음 방법으로 테스트 범주를 지정할 수 있습니다.

  • 이 항목 앞부분에서 설명한 대로 테스트 실행을 만들 때 테스트 범주를 지정합니다.

  • 기존 테스트 실행을 수정합니다. 기존 테스트 실행을 수정하려면 기본 노드, 자동화된 테스트 노드, 수정할 테스트 실행을 차례로 확장한 다음 범주 필터 상자를 클릭합니다.

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

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

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

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

여러 테스트 실행 설정

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

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

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

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

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

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

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

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

테스트 영향 분석 사용

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

테스트 영향 분석을 사용하려면

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

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

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

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

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

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

사용자 지정 빌드 프로세스에서 테스트를 실행하고 테스트에 대한 코드 변경 내용의 영향을 분석할 수 있습니다. 자세한 내용은 테스트 실행(MSTest 활동)을 참조하십시오.

자세한 내용

기본 템플릿을 사용하여 빌드 정의에서는 DefaultTemplate.xaml을 기반으로 빌드 정의를 만드는 방법에 대해 설명합니다.

방법: 응용 프로그램을 빌드한 후 예약된 테스트 구성 및 실행에서는 빌드 시스템에서 테스트를 실행하는 방법에 대해 설명합니다.

참고 항목

기타 리소스

빌드 프로세스 정의

변경 기록

날짜

변경 내용

이유

2011년 5월

항목이 추가되었습니다.

향상된 기능 관련 정보