다음을 통해 공유


AzureTestPlan@0 - Azure Test Plan v0 작업

테스트 계획에서 Java, JavaScript 및 Python 언어로 수동 및 자동화된 테스트를 실행합니다.

비고

이 작업은 공개 미리 보기로 제공됩니다.

문법

# Azure Test Plan v0
# Run manual and automated tests points of test plan for different testing frameworks like Maven and Gradle for Java, PyTest for Python and Jest for JavaScript.
- task: AzureTestPlan@0
  inputs:
    testSelector: # 'manualTests' | 'automatedTests'. Required. Test cases to be executed. 
    testPlanOrRunSelector: 'testPlan' # 'testPlan' | 'testRun'. Required. Select tests using. Default: testPlan.
    #testRunId: '$(test.RunId)' # string. Required when testPlanOrRunSelector = testRun. Test Run. Default: $(test.RunId).
    testPlan: # string. Required when testPlanOrRunSelector = testPlan. Test plan. 
    testSuite: # string. Required when testPlanOrRunSelector = testPlan. Test suite. 
    testConfiguration: # string. Required. Test configuration. 
    #testLanguageInput: # 'JavaMaven' | 'JavaGradle' | 'Python' | 'JavaScriptJest'. Select Test framework language. 
    #pomFilePath: # string. Optional. Use when testLanguageInput = JavaMaven. Pom file path. 
    #gradleFilePath: # string. Optional. Use when testLanguageInput = JavaGradle. Gradle file path. 
    #failTaskOnFailedTests: true # boolean. Fail if there are test failures. Default: true.
    #failTaskOnFailureToPublishResults: false # boolean. Fail if there is failure in publishing test results. Default: false.
    #failTaskOnMissingResultsFile: false # boolean. Fail if no result files are found. Default: false.
  # advanced
    #publishRunAttachments: true # boolean. Upload test results files. Default: true.

입력

testSelector - 실행할 테스트 케이스
string; 필수 사항입니다. 허용되는 값: manualTests (수동 테스트), automatedTests (자동화된 테스트).

  • 수동 테스트: 이 옵션을 사용하여 테스트 계획에서 수동 테스트를 트리거할 수 있습니다.
  • 자동화된 테스트: 자동화된 테스트 메서드가 연결된 테스트 계획의 테스트를 실행하려면 이 옵션을 사용합니다.
  • .

testPlanOrRunSelector - 사용하여 테스트 선택
string; 필수 사항입니다. 허용되는 값: testPlan (테스트 계획), testRun (테스트 실행). 기본값은 testPlan입니다.

  • 어셈블리 테스트: 이 옵션을 사용하여 테스트가 포함된 하나 이상의 테스트 어셈블리를 지정할 수 있습니다. 필요에 따라 필터 조건을 지정하여 특정 테스트만 선택할 수 있습니다.
  • 테스트 계획: 자동화된 테스트 메서드가 연결되어 있는 테스트 계획의 테스트를 실행하려면 이 옵션을 사용합니다.
  • 테스트 실행: 테스트 허브에서 테스트를 실행하도록 환경을 설정할 때 이 옵션을 사용합니다. CI/CD(연속 통합/지속적인 배포) 파이프라인에서 테스트를 실행할 때 이 옵션을 사용하면 안 됩니다.
  • .

testRunId - 테스트 실행
string; testPlanOrRunSelector = testRun때 필요합니다. 기본값은 $(test.RunId)입니다.

테스트 실행 기반 선택은 테스트 허브에서 자동화된 테스트 실행을 트리거할 때 사용되며, 이에 대한 값은 그대로 유지되어야 합니다.


testPlan - 테스트 계획
string; testPlanOrRunSelector = testPlan때 필요합니다.

테스트 사례가 있는 테스트 도구 모음이 포함된 테스트 계획 ID를 입력하거나 붙여넣습니다.


testSuite - 테스트 도구 모음
string; testPlanOrRunSelector = testPlan때 필요합니다.

테스트 사례가 포함된 테스트 도구 모음을 하나 이상 선택합니다.


testConfiguration - 테스트 구성
string; 필수 사항입니다.

구성 테스트를 선택합니다.


testLanguageInput - 테스트 프레임워크 언어를 선택합니다.
string; 허용되는 값: JavaMaven (Java - Maven), JavaGradle (Java - Gradle), Python (Python - PyTest), JavaScriptJest (JavaScript - Jest).

테스트 프레임워크: 테스트 계획에서 자동화된 테스트의 언어입니다.


pomFilePath - Pom 파일 경로
string; 선택 사항입니다. testLanguageInput = JavaMaven때 사용합니다.

리포지토리 루트에서 Maven POM 파일까지의 상대 경로입니다.


gradleFilePath - Gradle 파일 경로
string; 선택 사항입니다. testLanguageInput = JavaGradle때 사용합니다.

리포지토리 루트에서 build.gradle 파일까지의 상대 경로입니다.


publishRunAttachments - 테스트 결과 파일 업로드
boolean; 기본값은 true입니다.

테스트를 실행할 때 수집된 진단 정보가 포함된 로그 및 기타 파일을 업로드합니다.


failTaskOnFailedTests - 테스트 실패가 있는 경우 실패
boolean; 기본값은 true입니다.

테스트 실패가 있는 경우 작업에 실패합니다. 결과 파일에서 테스트 실패가 감지된 경우 작업이 실패하려면 이 옵션을 선택합니다.


failTaskOnFailureToPublishResults - 테스트 결과 게시에 오류가 있는 경우 실패
boolean; 기본값은 false입니다.

테스트 결과를 게시하지 못하면 실패합니다. 테스트 결과 게시가 부분적으로 실패한 경우 작업이 실패하려면 이 옵션을 선택합니다.


failTaskOnMissingResultsFile - 결과 파일을 찾을 수 없는 경우 실패
boolean; 기본값은 false입니다.

결과 파일을 찾을 수 없으면 작업을 실패합니다.


작업 제어 옵션

모든 작업에는 작업 입력 외에 제어 옵션이 있습니다. 자세한 내용은 컨트롤 옵션 및 일반적인 작업 속성참조하세요.

출력 변수

없음.

비고

자동화된 테스트를 테스트 계획과 통합

자동화된 테스트를 수동 테스트 사례와 통합하고 Test Plans 또는 빌드 파이프라인의 Azure Test Plan 작업을 통해 실행하려면 아래 단계를 수행합니다.

  1. 프로젝트가 Azure DevOps Repos(또는 GitHub Repos)에 있는지 확인합니다.

  2. Gradle 또는 Maven과 같은 작업을 사용하여 테스트를 실행하는 파이프라인을 만듭니다. 테스트가 기존 파이프라인의 일부로 이미 실행된 경우 이 단계를 건너뛸 수 있습니다. 테스트를 실행하는 것은 필수적이며, 테스트를 한 번 이상 실행한 후에만 수동 테스트 사례와 연결할 수 있습니다.

     trigger: none
    
     pool:
       vmImage: ubuntu-latest
    
     steps:
     - task: Gradle@3
       inputs:
         gradleWrapperFile: 'gradlew'
         workingDirectory: '$(Build.SourcesDirectory)'
         tasks: 'build'
         publishJUnitResults: true
         testResultsFiles: '**/TEST-*.xml'
         testRunTitle: 'gridinitialexecution'
         javaHomeOption: 'JDKVersion'
         sonarQubeRunAnalysis: false
         spotBugsAnalysis: false
    
  3. 다음 단계는 파이프라인 실행 요약의 테스트 탭에 있는 테스트 사례를 수동 테스트 사례 작업 항목에 연결하는 것입니다. 이렇게 하려면 새 테스트 케이스를 생성하거나 기존 테스트 케이스를 사용합니다(TC4의 Automation Status 열 참고).

    자동화가 없는 테스트 사례의 스크린샷.

  4. 테스트 사례가 있으면 파이프라인 실행 요약 페이지로 돌아가서 자동화된 테스트를 테스트 사례와 연결합니다.

    Azure Pipelines의 연결 환경 스크린샷

  5. 수동 테스트 사례에 연결된 자동화된 테스트가 있는지 확인하는 방법은 다음과 같습니다.

    자동화가 있는 테스트 케이스의 스크린샷.

    자동화된 테스트가 연결된 테스트 사례의 스크린샷

  6. 이제 테스트 사례가 수동 테스트 사례 작업 항목과 연결되었으므로 Azure 테스트 계획 작업에서 테스트 계획을 인수로 전달하여 파이프라인의 일부로 실행할 수 있습니다.

    trigger: none
    pool:
      vmImage: ubuntu-latest
    
    steps:
    - task: AzureTestPlan@0
      inputs:
        testSelector: 'automatedTests'
        testPlanOrRunSelector: 'testPlan'
        testPlan: '21294'
        testSuite: '229461'
        testConfiguration: '82'
        testLanguageInput: 'JavaGradle'
    

파이프라인을 저장하고 실행합니다.

다음은 다른 테스트 사례와 함께 TC4의 결과를 보여주는 파이프라인 결과 요약입니다.

연결된 자동화 탭의 스크린샷입니다.

요구 사항

요구 사항 설명
파이프라인 유형 YAML, 클래식 빌드, 클래식 릴리스
다음에서 실행 에이전트, DeploymentGroup
요구 없음
기능 이 작업은 작업의 후속 작업에 대한 요구 사항을 충족하지 않습니다.
명령 제한 어느 것이든
settable 변수 어느 것이든
에이전트 버전 2.144.0 이상
작업 범주 테스트