Freigeben über


AzureTestPlan@0 – Azure Test Plan v0-Aufgabe

Führen Sie manuelle und automatisierte Tests im Testplan in den Sprachen Java, JavaScript und Python durch.

Hinweis

Diese Aufgabe befindet sich in der Public Preview.

Syntax

# 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.

Eingänge

testSelector - Auszuführende Testfälle
string. Erforderlich. Zulässige Werte: manualTests (Manuelle Tests), automatedTests (Automatisierte Tests).

  • Manuelle Prüfungen: Verwenden Sie diese Option, um manuelle Tests aus dem Testplan auszulösen.
  • Automatisierte Tests: Verwenden Sie diese Option, um Tests aus dem Testplan auszuführen, denen eine automatisierte Testmethode zugeordnet ist.
  • .

testPlanOrRunSelector - Auswählen von Tests mithilfe von
string. Erforderlich. Zulässige Werte: testPlan (Testplan), testRun (Testlauf). Standardwert: testPlan.

  • Versuchsmontage: Verwenden Sie diese Option, um eine oder mehrere Testassemblys anzugeben, die die Tests enthalten. Sie können optional ein Filterkriterium angeben, um nur bestimmte Tests auszuwählen.
  • Prüfplan: Verwenden Sie diese Option, um Tests aus dem Testplan auszuführen, denen eine automatisierte Testmethode zugeordnet ist.
  • Testlauf: Verwenden Sie diese Option, wenn Sie eine Umgebung zum Ausführen von Tests über den Testhub einrichten. Diese Option sollte nicht verwendet werden, wenn Tests in einer CI/CD-Pipeline (Continuous Integration/Continuous Deployment) ausgeführt werden.
  • .

testRunId - Testausführung
string. Erforderlich, wenn testPlanOrRunSelector = testRun. Standardwert: $(test.RunId).

Die auf dem Testlauf basierende Auswahl wird verwendet, wenn automatisierte Testläufe vom Testhub aus ausgelöst werden. Der Wert dafür sollte unverändert bleiben.


testPlan - Testplan
string. Erforderlich, wenn testPlanOrRunSelector = testPlan.

Geben Sie die Testplan-ID ein, die Testsammlungen mit Testfällen enthält, oder fügen Sie sie ein.


testSuite - Testsuite
string. Erforderlich, wenn testPlanOrRunSelector = testPlan.

Wählen Sie eine oder mehrere Testsammlungen aus, die Testfälle enthalten.


testConfiguration - Testkonfiguration
string. Erforderlich.

Wählen Sie Konfiguration testen aus.


testLanguageInput - Sprache des Testframeworks auswählen
string. Zulässige Werte: JavaMaven (Java - Maven), JavaGradle (Java - Gradle), Python (Python - PyTest), JavaScriptJest (JavaScript - Jest).

Test-Framework-Sprache von automatisierten Tests im Testplan.


pomFilePath - Pfad der Pom-Datei
string. Wahlfrei. Wird verwendet, wenn testLanguageInput = JavaMaven.

Relativer Pfad vom Repository-Stamm zur Maven-POM-Datei.


gradleFilePath - Pfad der Gradle-Datei
string. Wahlfrei. Wird verwendet, wenn testLanguageInput = JavaGradle.

Relativer Pfad vom Repository-Stamm zur Datei build.gradle.


publishRunAttachments - Hochladen von Testergebnissen
boolean. Standardwert: true.

Hochladen von Protokollen und anderen Dateien mit Diagnoseinformationen, die beim Ausführen der Tests gesammelt wurden.


failTaskOnFailedTests - Fehlschlagen, wenn testfehler
boolean. Standardwert: true.

Die Aufgabe schlägt fehl, wenn Testfehler auftreten. Aktivieren Sie diese Option, um die Aufgabe fehlschlagen zu lassen, wenn in den Ergebnisdateien Testfehler erkannt werden.


failTaskOnFailureToPublishResults - Fehlschlagen, wenn beim Veröffentlichen von Testergebnissen fehler
boolean. Standardwert: false.

Fehler, wenn beim Veröffentlichen von Testergebnissen ein Fehler auftritt. Aktivieren Sie diese Option, um die Aufgabe fehlzuschlagen, wenn die Veröffentlichung von Testergebnissen teilweise fehlschlägt.


failTaskOnMissingResultsFile - Fehler, wenn keine Ergebnisdateien gefunden werden
boolean. Standardwert: false.

Schlägt die Aufgabe fehl, wenn keine Ergebnisdateien gefunden werden.


Aufgabensteuerungsoptionen

Alle Aufgaben verfügen zusätzlich zu ihren Aufgabeneingaben über Steuerungsoptionen. Weitere Informationen finden Sie unter Steuerelementoptionen und allgemeinen Aufgabeneigenschaften.

Ausgabevariablen

Keiner.

Bemerkungen

Integrieren Sie Ihre automatisierten Tests in einen Testplan

Führen Sie die folgenden Schritte aus, um Ihre automatisierten Tests in manuelle Testfälle zu integrieren und sie über Testpläne oder über die Azure Test Plan-Aufgabe in Ihren Buildpipelines auszuführen:

  1. Stellen Sie sicher, dass sich Ihr Projekt in Azure DevOps Repos (oder GitHub Repos) befindet.

  2. Erstellen Sie eine Pipeline, die die Tests mit Aufgaben wie Gradle oder Maven ausführt. Wenn Ihre Tests bereits als Teil einer vorhandenen Pipeline ausgeführt werden, können Sie diesen Schritt überspringen. Das Ausführen der Tests ist unerlässlich – erst nachdem sie mindestens einmal ausgeführt wurden, stehen sie für die Verknüpfung mit manuellen Testfällen zur Verfügung.

     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. Der nächste Schritt besteht darin, die Testfälle über die Registerkarte Test der Zusammenfassung der Pipelineausführung mit einer manuellen Testfallarbeitsaufgabe zu verknüpfen. Legen Sie dazu einen neuen Testfall an oder verwenden Sie einen vorhandenen (beachten Sie die Spalte Automation Status für TC4):

    Screenshot eines Testfalls ohne Automatisierung.

  4. Sobald Sie über einen Testfall verfügen, kehren Sie zur Zusammenfassungsseite der Pipelineausführung zurück, und ordnen Sie den automatisierten Test dem Testfall zu.

    Screenshot der Zuordnungsoberfläche in Azure Pipelines

  5. So können Sie feststellen, ob einem manuellen Testfall ein automatisierter Test zugeordnet ist:

    Screenshot eines Testfalls mit Automatisierung.

    Screenshot eines Testfalls mit einem zugehörigen automatisierten Test.

  6. Da der Testfall nun einer manuellen Testfallarbeitsaufgabe zugeordnet ist, können Sie ihn als Teil einer Pipeline ausführen, indem Sie den Testplan als Argument in der Azure Test Plan-Aufgabe übergeben.

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

Speichern Sie die Pipeline und führen Sie sie aus.

Hier ist die Zusammenfassung des Pipeline-Ergebnisses, die das Ergebnis für TC4 zusammen mit anderen Testfällen zeigt:

Screenshot der zugehörigen Registerkarte

Anforderungen

Anforderung BESCHREIBUNG
Pipelinetypen YAML, Classic Build, Classic Release
Läuft auf Agent, DeploymentGroup
Anforderungen Nichts
Funktionen Dieser Vorgang erfüllt keine Anforderungen für nachfolgende Vorgänge im Auftrag.
Befehlseinschränkungen Beliebig
Settable-Variablen Beliebig
Agentversion 2.144.0 oder höher
Vorgangskategorie Testen