VSTest@2 – úloha Visual Studio Test v2

Pomocí této úlohy můžete spustit testy jednotek a funkcí (Selenium, Appium, programový test uživatelského rozhraní atd.) pomocí nástroje Visual Studio Test (VSTest) runner. Můžete spustit testovací rozhraní, která mají testovací adaptér sady Visual Studio. Příkladem architektur jsou MSTest, xUnit, NUnit, Chutzpah (pro javascriptové testy s využitím QUnit, Mocha a Jasmine) atd. Pomocí této úlohy (verze 2) je možné testy distribuovat do více agentů.

Syntax

# Visual Studio Test v2
# Run unit and functional tests (Selenium, Appium, Coded UI test, etc.) using the Visual Studio Test (VsTest) runner. Test frameworks that have a Visual Studio test adapter such as MsTest, xUnit, NUnit, Chutzpah (for JavaScript tests using QUnit, Mocha and Jasmine), etc. can be run. Tests can be distributed on multiple agents using this task (version 2).
- task: VSTest@2
  inputs:
  # Test selection
    testSelector: 'testAssemblies' # 'testAssemblies' | 'testPlan' | 'testRun'. Required. Select tests using. Default: testAssemblies.
    testAssemblyVer2: # string. Required when testSelector = testAssemblies. Test files. 
    #testPlan: # string. Required when testSelector = testPlan. Test plan. 
    #testSuite: # string. Required when testSelector = testPlan. Test suite. 
    #testConfiguration: # string. Required when testSelector = testPlan. Test configuration. 
    #tcmTestRun: '$(test.RunId)' # string. Optional. Use when testSelector = testRun. Test Run. Default: $(test.RunId).
    searchFolder: '$(System.DefaultWorkingDirectory)' # string. Required. Search folder. Default: $(System.DefaultWorkingDirectory).
    #resultsFolder: '$(Agent.TempDirectory)\TestResults' # string. Test results folder. Default: $(Agent.TempDirectory)\TestResults.
    #testFiltercriteria: # string. Optional. Use when testSelector = testAssemblies. Test filter criteria. 
    #runOnlyImpactedTests: False # boolean. Optional. Use when testSelector = testAssemblies. Run only impacted tests. Default: False.
    #runAllTestsAfterXBuilds: '50' # string. Optional. Use when testSelector = testAssemblies && runOnlyImpactedTests = true. Number of builds after which all tests should be run. Default: 50.
    #uiTests: false # boolean. Test mix contains UI tests. Default: false.
  # Execution options
    #vstestLocationMethod: 'version' # 'version' | 'location'. Select test platform using. Default: version.
    #vsTestVersion: 'latest' # 'latest' | '17.0' | '16.0' | '15.0' | '14.0' | 'toolsInstaller'. Optional. Use when vstestLocationMethod = version. Test platform version. Default: latest.
    #vstestLocation: # string. Optional. Use when vstestLocationMethod = location. Path to vstest.console.exe. 
    #runSettingsFile: # string. Settings file. 
    #overrideTestrunParameters: # string. Override test run parameters. 
    #pathtoCustomTestAdapters: # string. Path to custom test adapters. 
    #runInParallel: False # boolean. Run tests in parallel on multi-core machines. Default: False.
    #runTestsInIsolation: False # boolean. Run tests in isolation. Default: False.
    #codeCoverageEnabled: False # boolean. Code coverage enabled. Default: False.
    #otherConsoleOptions: # string. Other console options. 
    #diagnosticsEnabled: false # boolean. Collect advanced diagnostics in case of catastrophic failures. Default: false.
    #collectDumpOn: 'onAbortOnly' # 'onAbortOnly' | 'always' | 'never'. Optional. Use when diagnosticsEnabled = true. Collect process dump and attach to test run report. Default: onAbortOnly.
    #rerunFailedTests: False # boolean. Rerun failed tests. Default: False.
    #rerunType: 'basedOnTestFailurePercentage' # 'basedOnTestFailurePercentage' | 'basedOnTestFailureCount'. Optional. Use when rerunFailedTests = true. Do not rerun if test failures exceed specified threshold. Default: basedOnTestFailurePercentage.
    #rerunFailedThreshold: '30' # string. Optional. Use when rerunFailedTests = true && rerunType = basedOnTestFailurePercentage. % failure. Default: 30.
    #rerunFailedTestCasesMaxLimit: '5' # string. Optional. Use when rerunFailedTests = true && rerunType = basedOnTestFailureCount. # of failed tests. Default: 5.
    #rerunMaxAttempts: '3' # string. Optional. Use when rerunFailedTests = true. Maximum # of attempts. Default: 3.
  # Advanced execution options
    #distributionBatchType: 'basedOnTestCases' # 'basedOnTestCases' | 'basedOnExecutionTime' | 'basedOnAssembly'. Batch tests. Default: basedOnTestCases.
    #batchingBasedOnAgentsOption: 'autoBatchSize' # 'autoBatchSize' | 'customBatchSize'. Optional. Use when distributionBatchType = basedOnTestCases. Batch options. Default: autoBatchSize.
    #customBatchSizeValue: '10' # string. Required when distributionBatchType = basedOnTestCases && batchingBasedOnAgentsOption = customBatchSize. Number of tests per batch. Default: 10.
    #batchingBasedOnExecutionTimeOption: 'autoBatchSize' # 'autoBatchSize' | 'customTimeBatchSize'. Optional. Use when distributionBatchType = basedOnExecutionTime. Batch options. Default: autoBatchSize.
    #customRunTimePerBatchValue: '60' # string. Required when distributionBatchType = basedOnExecutionTime && batchingBasedOnExecutionTimeOption = customTimeBatchSize. Running time (sec) per batch. Default: 60.
    #dontDistribute: False # boolean. Replicate tests instead of distributing when multiple agents are used in the job. Default: False.
  # Reporting options
    #testRunTitle: # string. Test run title. 
    #platform: # string. Build platform. 
    #configuration: # string. Build configuration. 
    #publishRunAttachments: true # boolean. Upload test attachments. Default: true.
    #failOnMinTestsNotRun: False # boolean. Fail the task if a minimum number of tests are not run. Default: False.
    #minimumExpectedTests: '1' # string. Optional. Use when failOnMinTestsNotRun = true. Minimum # of tests. Default: 1.
# Visual Studio Test v2
# Run unit and functional tests (Selenium, Appium, Coded UI test, etc.) using the Visual Studio Test (VsTest) runner. Test frameworks that have a Visual Studio test adapter such as MsTest, xUnit, NUnit, Chutzpah (for JavaScript tests using QUnit, Mocha and Jasmine), etc. can be run. Tests can be distributed on multiple agents using this task (version 2).
- task: VSTest@2
  inputs:
  # Test selection
    testSelector: 'testAssemblies' # 'testAssemblies' | 'testPlan' | 'testRun'. Required. Select tests using. Default: testAssemblies.
    testAssemblyVer2: # string. Required when testSelector = testAssemblies. Test files. 
    #testPlan: # string. Required when testSelector = testPlan. Test plan. 
    #testSuite: # string. Required when testSelector = testPlan. Test suite. 
    #testConfiguration: # string. Required when testSelector = testPlan. Test configuration. 
    #tcmTestRun: '$(test.RunId)' # string. Optional. Use when testSelector = testRun. Test Run. Default: $(test.RunId).
    searchFolder: '$(System.DefaultWorkingDirectory)' # string. Required. Search folder. Default: $(System.DefaultWorkingDirectory).
    #resultsFolder: '$(Agent.TempDirectory)\TestResults' # string. Test results folder. Default: $(Agent.TempDirectory)\TestResults.
    #testFiltercriteria: # string. Optional. Use when testSelector = testAssemblies. Test filter criteria. 
    #runOnlyImpactedTests: False # boolean. Optional. Use when testSelector = testAssemblies. Run only impacted tests. Default: False.
    #runAllTestsAfterXBuilds: '50' # string. Optional. Use when testSelector = testAssemblies && runOnlyImpactedTests = true. Number of builds after which all tests should be run. Default: 50.
    #uiTests: false # boolean. Test mix contains UI tests. Default: false.
  # Execution options
    #vstestLocationMethod: 'version' # 'version' | 'location'. Select test platform using. Default: version.
    #vsTestVersion: 'latest' # 'latest' | '16.0' | '15.0' | '14.0' | 'toolsInstaller'. Optional. Use when vstestLocationMethod = version. Test platform version. Default: latest.
    #vstestLocation: # string. Optional. Use when vstestLocationMethod = location. Path to vstest.console.exe. 
    #runSettingsFile: # string. Settings file. 
    #overrideTestrunParameters: # string. Override test run parameters. 
    #pathtoCustomTestAdapters: # string. Path to custom test adapters. 
    #runInParallel: False # boolean. Run tests in parallel on multi-core machines. Default: False.
    #runTestsInIsolation: False # boolean. Run tests in isolation. Default: False.
    #codeCoverageEnabled: False # boolean. Code coverage enabled. Default: False.
    #otherConsoleOptions: # string. Other console options. 
    #diagnosticsEnabled: false # boolean. Collect advanced diagnostics in case of catastrophic failures. Default: false.
    #collectDumpOn: 'onAbortOnly' # 'onAbortOnly' | 'always' | 'never'. Optional. Use when diagnosticsEnabled = true. Collect process dump and attach to test run report. Default: onAbortOnly.
    #rerunFailedTests: False # boolean. Rerun failed tests. Default: False.
    #rerunType: 'basedOnTestFailurePercentage' # 'basedOnTestFailurePercentage' | 'basedOnTestFailureCount'. Optional. Use when rerunFailedTests = true. Do not rerun if test failures exceed specified threshold. Default: basedOnTestFailurePercentage.
    #rerunFailedThreshold: '30' # string. Optional. Use when rerunFailedTests = true && rerunType = basedOnTestFailurePercentage. % failure. Default: 30.
    #rerunFailedTestCasesMaxLimit: '5' # string. Optional. Use when rerunFailedTests = true && rerunType = basedOnTestFailureCount. # of failed tests. Default: 5.
    #rerunMaxAttempts: '3' # string. Optional. Use when rerunFailedTests = true. Maximum # of attempts. Default: 3.
  # Advanced execution options
    #distributionBatchType: 'basedOnTestCases' # 'basedOnTestCases' | 'basedOnExecutionTime' | 'basedOnAssembly'. Batch tests. Default: basedOnTestCases.
    #batchingBasedOnAgentsOption: 'autoBatchSize' # 'autoBatchSize' | 'customBatchSize'. Optional. Use when distributionBatchType = basedOnTestCases. Batch options. Default: autoBatchSize.
    #customBatchSizeValue: '10' # string. Required when distributionBatchType = basedOnTestCases && batchingBasedOnAgentsOption = customBatchSize. Number of tests per batch. Default: 10.
    #batchingBasedOnExecutionTimeOption: 'autoBatchSize' # 'autoBatchSize' | 'customTimeBatchSize'. Optional. Use when distributionBatchType = basedOnExecutionTime. Batch options. Default: autoBatchSize.
    #customRunTimePerBatchValue: '60' # string. Required when distributionBatchType = basedOnExecutionTime && batchingBasedOnExecutionTimeOption = customTimeBatchSize. Running time (sec) per batch. Default: 60.
    #dontDistribute: False # boolean. Replicate tests instead of distributing when multiple agents are used in the job. Default: False.
  # Reporting options
    #testRunTitle: # string. Test run title. 
    #platform: # string. Build platform. 
    #configuration: # string. Build configuration. 
    #publishRunAttachments: true # boolean. Upload test attachments. Default: true.
    #failOnMinTestsNotRun: False # boolean. Fail the task if a minimum number of tests are not run. Default: False.
    #minimumExpectedTests: '1' # string. Optional. Use when failOnMinTestsNotRun = true. Minimum # of tests. Default: 1.
# Visual Studio Test v2
# Run unit and functional tests (Selenium, Appium, Coded UI test, etc.) using the Visual Studio Test (VsTest) runner. Test frameworks that have a Visual Studio test adapter such as MsTest, xUnit, NUnit, Chutzpah (for JavaScript tests using QUnit, Mocha and Jasmine), etc. can be run. Tests can be distributed on multiple agents using this task (version 2).
- task: VSTest@2
  inputs:
  # Test selection
    testSelector: 'testAssemblies' # 'testAssemblies' | 'testPlan' | 'testRun'. Required. Select tests using. Default: testAssemblies.
    testAssemblyVer2: # string. Required when testSelector = testAssemblies. Test files. 
    #testPlan: # string. Required when testSelector = testPlan. Test plan. 
    #testSuite: # string. Required when testSelector = testPlan. Test suite. 
    #testConfiguration: # string. Required when testSelector = testPlan. Test configuration. 
    #tcmTestRun: '$(test.RunId)' # string. Optional. Use when testSelector = testRun. Test Run. Default: $(test.RunId).
    searchFolder: '$(System.DefaultWorkingDirectory)' # string. Required. Search folder. Default: $(System.DefaultWorkingDirectory).
    #testFiltercriteria: # string. Optional. Use when testSelector = testAssemblies. Test filter criteria. 
    #runOnlyImpactedTests: False # boolean. Optional. Use when testSelector = testAssemblies. Run only impacted tests. Default: False.
    #runAllTestsAfterXBuilds: '50' # string. Optional. Use when testSelector = testAssemblies && runOnlyImpactedTests = true. Number of builds after which all tests should be run. Default: 50.
    #uiTests: false # boolean. Test mix contains UI tests. Default: false.
  # Execution options
    #vstestLocationMethod: 'version' # 'version' | 'location'. Select test platform using. Default: version.
    #vsTestVersion: 'latest' # 'latest' | '16.0' | '15.0' | '14.0' | 'toolsInstaller'. Optional. Use when vstestLocationMethod = version. Test platform version. Default: latest.
    #vstestLocation: # string. Optional. Use when vstestLocationMethod = location. Path to vstest.console.exe. 
    #runSettingsFile: # string. Settings file. 
    #overrideTestrunParameters: # string. Override test run parameters. 
    #pathtoCustomTestAdapters: # string. Path to custom test adapters. 
    #runInParallel: False # boolean. Run tests in parallel on multi-core machines. Default: False.
    #runTestsInIsolation: False # boolean. Run tests in isolation. Default: False.
    #codeCoverageEnabled: False # boolean. Code coverage enabled. Default: False.
    #otherConsoleOptions: # string. Other console options. 
    #diagnosticsEnabled: false # boolean. Collect advanced diagnostics in case of catastrophic failures. Default: false.
    #collectDumpOn: 'onAbortOnly' # 'onAbortOnly' | 'always' | 'never'. Optional. Use when diagnosticsEnabled = true. Collect process dump and attach to test run report. Default: onAbortOnly.
    #rerunFailedTests: False # boolean. Rerun failed tests. Default: False.
    #rerunType: 'basedOnTestFailurePercentage' # 'basedOnTestFailurePercentage' | 'basedOnTestFailureCount'. Optional. Use when rerunFailedTests = true. Do not rerun if test failures exceed specified threshold. Default: basedOnTestFailurePercentage.
    #rerunFailedThreshold: '30' # string. Optional. Use when rerunFailedTests = true && rerunType = basedOnTestFailurePercentage. % failure. Default: 30.
    #rerunFailedTestCasesMaxLimit: '5' # string. Optional. Use when rerunFailedTests = true && rerunType = basedOnTestFailureCount. # of failed tests. Default: 5.
    #rerunMaxAttempts: '3' # string. Optional. Use when rerunFailedTests = true. Maximum # of attempts. Default: 3.
  # Advanced execution options
    #distributionBatchType: 'basedOnTestCases' # 'basedOnTestCases' | 'basedOnExecutionTime' | 'basedOnAssembly'. Batch tests. Default: basedOnTestCases.
    #batchingBasedOnAgentsOption: 'autoBatchSize' # 'autoBatchSize' | 'customBatchSize'. Optional. Use when distributionBatchType = basedOnTestCases. Batch options. Default: autoBatchSize.
    #customBatchSizeValue: '10' # string. Required when distributionBatchType = basedOnTestCases && batchingBasedOnAgentsOption = customBatchSize. Number of tests per batch. Default: 10.
    #batchingBasedOnExecutionTimeOption: 'autoBatchSize' # 'autoBatchSize' | 'customTimeBatchSize'. Optional. Use when distributionBatchType = basedOnExecutionTime. Batch options. Default: autoBatchSize.
    #customRunTimePerBatchValue: '60' # string. Required when distributionBatchType = basedOnExecutionTime && batchingBasedOnExecutionTimeOption = customTimeBatchSize. Running time (sec) per batch. Default: 60.
    #dontDistribute: False # boolean. Replicate tests instead of distributing when multiple agents are used in the job. Default: False.
  # Reporting options
    #testRunTitle: # string. Test run title. 
    #platform: # string. Build platform. 
    #configuration: # string. Build configuration. 
    #publishRunAttachments: true # boolean. Upload test attachments. Default: true.
# Visual Studio Test v2
# Run unit and functional tests (Selenium, Appium, Coded UI test, etc.) using the Visual Studio Test (VsTest) runner. Test frameworks that have a Visual Studio test adapter such as MsTest, xUnit, NUnit, Chutzpah (for JavaScript tests using QUnit, Mocha and Jasmine), etc. can be run. Tests can be distributed on multiple agents using this task (version 2).
- task: VSTest@2
  inputs:
  # Test selection
    testSelector: 'testAssemblies' # 'testAssemblies' | 'testPlan' | 'testRun'. Required. Select tests using. Default: testAssemblies.
    testAssemblyVer2: # string. Required when testSelector = testAssemblies. Test files. 
    #testPlan: # string. Required when testSelector = testPlan. Test plan. 
    #testSuite: # string. Required when testSelector = testPlan. Test suite. 
    #testConfiguration: # string. Required when testSelector = testPlan. Test configuration. 
    #tcmTestRun: '$(test.RunId)' # string. Optional. Use when testSelector = testRun. Test Run. Default: $(test.RunId).
    searchFolder: '$(System.DefaultWorkingDirectory)' # string. Required. Search folder. Default: $(System.DefaultWorkingDirectory).
    #testFiltercriteria: # string. Optional. Use when testSelector = testAssemblies. Test filter criteria. 
    #runOnlyImpactedTests: False # boolean. Optional. Use when testSelector = testAssemblies. Run only impacted tests. Default: False.
    #runAllTestsAfterXBuilds: '50' # string. Optional. Use when testSelector = testAssemblies && runOnlyImpactedTests = true. Number of builds after which all tests should be run. Default: 50.
    #uiTests: false # boolean. Test mix contains UI tests. Default: false.
  # Execution options
    #vstestLocationMethod: 'version' # 'version' | 'location'. Select test platform using. Default: version.
    #vsTestVersion: 'latest' # 'latest' | '16.0' | '15.0' | '14.0' | 'toolsInstaller'. Optional. Use when vstestLocationMethod = version. Test platform version. Default: latest.
    #vstestLocation: # string. Optional. Use when vstestLocationMethod = location. Path to vstest.console.exe. 
    #runSettingsFile: # string. Settings file. 
    #overrideTestrunParameters: # string. Override test run parameters. 
    #pathtoCustomTestAdapters: # string. Path to custom test adapters. 
    #runInParallel: False # boolean. Run tests in parallel on multi-core machines. Default: False.
    #runTestsInIsolation: False # boolean. Run tests in isolation. Default: False.
    #codeCoverageEnabled: False # boolean. Code coverage enabled. Default: False.
    #otherConsoleOptions: # string. Other console options. 
    #diagnosticsEnabled: True # boolean. Collect advanced diagnostics in case of catastrophic failures. Default: True.
    #collectDumpOn: 'onAbortOnly' # 'onAbortOnly' | 'always' | 'never'. Optional. Use when diagnosticsEnabled = true. Collect process dump and attach to test run report. Default: onAbortOnly.
    #rerunFailedTests: False # boolean. Rerun failed tests. Default: False.
    #rerunType: 'basedOnTestFailurePercentage' # 'basedOnTestFailurePercentage' | 'basedOnTestFailureCount'. Optional. Use when rerunFailedTests = true. Do not rerun if test failures exceed specified threshold. Default: basedOnTestFailurePercentage.
    #rerunFailedThreshold: '30' # string. Optional. Use when rerunFailedTests = true && rerunType = basedOnTestFailurePercentage. % failure. Default: 30.
    #rerunFailedTestCasesMaxLimit: '5' # string. Optional. Use when rerunFailedTests = true && rerunType = basedOnTestFailureCount. # of failed tests. Default: 5.
    #rerunMaxAttempts: '3' # string. Optional. Use when rerunFailedTests = true. Maximum # of attempts. Default: 3.
  # Advanced execution options
    #distributionBatchType: 'basedOnTestCases' # 'basedOnTestCases' | 'basedOnExecutionTime' | 'basedOnAssembly'. Batch tests. Default: basedOnTestCases.
    #batchingBasedOnAgentsOption: 'autoBatchSize' # 'autoBatchSize' | 'customBatchSize'. Optional. Use when distributionBatchType = basedOnTestCases. Batch options. Default: autoBatchSize.
    #customBatchSizeValue: '10' # string. Required when distributionBatchType = basedOnTestCases && batchingBasedOnAgentsOption = customBatchSize. Number of tests per batch. Default: 10.
    #batchingBasedOnExecutionTimeOption: 'autoBatchSize' # 'autoBatchSize' | 'customTimeBatchSize'. Optional. Use when distributionBatchType = basedOnExecutionTime. Batch options. Default: autoBatchSize.
    #customRunTimePerBatchValue: '60' # string. Required when distributionBatchType = basedOnExecutionTime && batchingBasedOnExecutionTimeOption = customTimeBatchSize. Running time (sec) per batch. Default: 60.
    #dontDistribute: False # boolean. Do not distribute tests and replicate instead when multiple agents are used in the job. Default: False.
  # Reporting options
    #testRunTitle: # string. Test run title. 
    #platform: # string. Build platform. 
    #configuration: # string. Build configuration. 
    #publishRunAttachments: true # boolean. Upload test attachments. Default: true.

Vstupy

testSelector - Výběr testů pomocí
string. Povinná hodnota. Povolené hodnoty: testAssemblies (Testovací sestavení), testPlan (Testovací plán), testRun (Spuštění testu). Výchozí hodnota: testAssemblies.

  • Testovací sestavení: Určuje jedno nebo více testovacích sestavení, která obsahují vaše testy. Volitelně můžete zadat kritéria filtru pro výběr pouze konkrétních testů.
  • Testovací plán: Spustí testy z testovacího plánu, které mají přidruženou automatizovanou testovací metodu. Další informace o přidružení testů k pracovní položce testovacího případu najdete v tématu Přidružení automatizovaných testů k testovacím případům.
  • Testovací běh: Tuto možnost použijte, když nastavujete prostředí pro spouštění testů z testovacích plánů. Tato možnost by se neměla používat při spouštění testů v kanálu kontinuální integrace nebo průběžného nasazování (CI/CD).

testAssemblyVer2 - Testovací soubory
string. Vyžaduje se, když testSelector = testAssemblies. Výchozí hodnota: **\bin\**\*test.dll\n**\bin\**\*tests.dll.

Spustí testy ze zadaných souborů. Seřazené testy a webové testy lze spustit zadáním .orderedtest souborů a .webtest . Ke spuštění .webtestje potřeba Visual Studio 2017 Update 4 nebo novější. Cesty k souborům jsou relativní vzhledem ke složce výsledků hledání. Tento vstup podporuje více řádků minimatch vzorů.

# Example
- task: VSTest@2
  inputs:
    testSelector: 'testAssemblies'
    testAssemblyVer2: |
      **\*test*.dll
      !**\*TestAdapter.dll
      !**\obj\**

testAssemblyVer2 - Testovací soubory
string. Vyžaduje se, když testSelector = testAssemblies. Výchozí hodnota: **\*test*.dll\n!**\*TestAdapter.dll\n!**\obj\**.

Spustí testy ze zadaných souborů. Seřazené testy a webové testy lze spustit zadáním .orderedtest souborů a .webtest . Ke spuštění .webtestje potřeba Visual Studio 2017 Update 4 nebo novější. Cesty k souborům jsou relativní vzhledem ke složce výsledků hledání. Tento vstup podporuje více řádků minimatch vzorů.

# Example
- task: VSTest@2
  inputs:
    testSelector: 'testAssemblies'
    testAssemblyVer2: |
      **\*test*.dll
      !**\*TestAdapter.dll
      !**\obj\**

testPlan - Testovací plán
string. Vyžaduje se, když testSelector = testPlan.

Určuje testovací plán obsahující testovací sady s automatizovanými testovacími případy.


testSuite - Testovací sada
string. Vyžaduje se, když testSelector = testPlan.

Určuje jednu nebo více testovacích sad obsahujících automatizované testovací případy. Pracovní položky testovacího případu musí být přidružené k automatizované testovací metodě.


testConfiguration - Test konfigurace
string. Vyžaduje se, když testSelector = testPlan.

Určuje konfiguraci testu.


tcmTestRun - Testovací běh
string. Nepovinný parametr. Použijte, když testSelector = testRun. Výchozí hodnota: $(test.RunId).

Určuje výběr založený na testovacím spuštění, který se používá při spouštění automatizovaných testovacích běhů z testovacích plánů. Tuto možnost nelze použít pro spouštění testů v kanálu CI/CD.


searchFolder - Search složka
string. Povinná hodnota. Výchozí hodnota: $(System.DefaultWorkingDirectory).

Určuje složku pro vyhledání testovacích sestavení.


resultsFolder - Složka výsledků testů
string. Výchozí hodnota: $(Agent.TempDirectory)\TestResults.

Určuje složku pro uložení výsledků testu. Při použití výchozího adresáře se tento adresář vyčistí na konci spuštění kanálu. Adresář výsledků se před spuštěním testů vždy vyčistí na začátku vstest úlohy. Pokud je k dispozici relativní cesta ke složce, bude považována za relativní k $(Agent.TempDirectory).


testFiltercriteria - Kritéria testovacího filtru
string. Nepovinný parametr. Použijte, když testSelector = testAssemblies.

Určuje další kritéria pro filtrování testů z testovacích sestavení. Příklad: Priority=1|Name=MyTestMethod. Přečtěte si o možnostech příkazového řádku.


runOnlyImpactedTests - Spouštění pouze ovlivněných testů
boolean. Nepovinný parametr. Použijte, když testSelector = testAssemblies. Výchozí hodnota: False.

Automaticky určí a spustí testy potřebné k ověření změny kódu. Přečtěte si o používání analýzy dopadu testu.


runAllTestsAfterXBuilds - Počet sestavení, po kterých by se měly spustit všechny testy
string. Nepovinný parametr. Použijte, když testSelector = testAssemblies && runOnlyImpactedTests = true. Výchozí hodnota: 50.

Určuje počet sestavení, která se mají spustit před automatickým spuštěním všech testů. Test Impact Analysis ukládá mapování mezi testovacími případy a zdrojovým kódem. Doporučuje se znovu vygenerovat mapování pravidelným spouštěním všech testů.


uiTests - Kombinace testů obsahuje testy uživatelského rozhraní.
boolean. Výchozí hodnota: false.

Pokud chcete spouštět testy uživatelského rozhraní, ujistěte se, že je agent nastavený na spouštění v interaktivním režimu s povoleným automatickým přihlášením . Nastavení interaktivního spuštění agenta musí být provedeno před zařazením sestavení nebo vydané verze do fronty. Zaškrtnutím tohoto políčka se automaticky nenakonfiguruje agent v interaktivním režimu. Tato možnost slouží jako připomenutí správné konfigurace agenta, aby se zabránilo selháním. Hostované agenty Windows z fondů VS 2015 a 2017 je možné použít ke spouštění testů uživatelského rozhraní.


vstestLocationMethod - Výběr testovací platformy pomocí
string. Povolené hodnoty: version, location (Konkrétní umístění). Výchozí hodnota: version.

Určuje, kterou testovací platformu použít.


vsTestVersion - Testování verze platformy
string. Nepovinný parametr. Použijte, když vstestLocationMethod = version. Povolené hodnoty: latest, 17.0 (Visual Studio 2022), 16.0 (Visual Studio 2019), 15.0 (Visual Studio 2017), 14.0 (Visual Studio 2015), toolsInstaller (Nainstalováno instalačním programem nástrojů). Výchozí hodnota: latest.

Určuje verzi Visual Studio Test, která se má použít. Pokud je zadána nejnovější verze, tento vstup zvolí nejnovější verzi (ze seznamu povolených hodnot), která je nainstalována. Pokud chcete spouštět testy bez nutnosti sady Visual Studio v agentu, použijte možnost instalačního programu Nainstalované nástroji . Nezapomeňte zahrnout úlohu Instalační program testovací platformy sady Visual Studio , abyste získali testovací platformu z NuGetu.


vsTestVersion - Testování verze platformy
string. Nepovinný parametr. Použijte, když vstestLocationMethod = version. Povolené hodnoty: latest, 16.0 (Visual Studio 2019), 15.0 (Visual Studio 2017), 14.0 (Visual Studio 2015), toolsInstaller (nainstalovaný instalačním programem nástrojů). Výchozí hodnota: latest.

Určuje verzi Visual Studio Test, která se má použít. Pokud je zadána nejnovější verze, tento vstup zvolí nejnovější verzi (ze seznamu povolených hodnot), která je nainstalována. Pokud chcete spouštět testy bez nutnosti sady Visual Studio v agentu, použijte možnost instalačního programu Nainstalované nástroji . Nezapomeňte zahrnout úlohu Instalační program testovací platformy sady Visual Studio , abyste získali testovací platformu z NuGetu.


vstestLocation - Cesta k vstest.console.exe
string. Nepovinný parametr. Použijte, když vstestLocationMethod = location.

Určuje cestu k VSTest.


runSettingsFile - Soubor nastavení
string.

Určuje cestu k souboru nebo testsettings souboru, který runsettings se má použít s testy. Pro Visual Studio 15.7 a novější použijte runsettings pro všechny typy testů. Přečtěte si další informace o převodu .testsettings souboru na .runsettings soubor.


overrideTestrunParameters - Přepsání parametrů testovacího spuštění
string.

Přepíše parametry definované v TestRunParameters oddílu runsettings souboru nebo Properties oddílu testsettings souboru. Příklad: -key1 value1 -key2 value2. Poznámka: K vlastnostem zadaným testsettings v souboru můžete přistupovat pomocí TestContext sady Visual Studio 2017 (aktualizace 4 nebo vyšší).


pathtoCustomTestAdapters - Cesta k vlastním testovacím adaptérům
string.

Určuje cestu k adresáři k vlastním testovacím adaptérům. Adaptéry umístěné ve stejné složce jako testovací sestavení se automaticky zjišťují.


runInParallel - Paralelní spouštění testů na vícejádrových počítačích
boolean. Výchozí hodnota: False.

Pokud je nastavená hodnota true, testy se spouštějí paralelně a využívají dostupná jádra počítače. Tím se přepíše hodnota MaxCpuCount , pokud je v runsettings souboru zadána. Přečtěte si další informace o paralelním spouštění testů.


runTestsInIsolation - Izolované spouštění testů
boolean. Výchozí hodnota: False.

Spustí testy v izolovaném procesu. To pravděpodobně vede k menšímu počtu chyb v procesu testování vstest.console.exe, ale testy můžou běžet pomaleji. Tuto možnost v současné době nelze použít při spuštění s nastavením úlohy s více agenty.


codeCoverageEnabled - Pokrytí kódu povoleno
boolean. Výchozí hodnota: False.

Shromažďuje informace o pokrytí kódu z testovacího běhu.


otherConsoleOptions - Další možnosti konzoly
string.

Další možnosti konzoly , které lze předat vstest.console.exe.

Tyto možnosti nejsou podporované a budou ignorovány při spouštění testů pomocí paralelního nastavení multi agentů úlohy agenta, při spouštění testů pomocí možnosti Testovací plán nebo Testovací běh nebo při výběru možnosti vlastního dávkování. Možnosti lze místo toho zadat pomocí souboru nastavení.


distributionBatchType - Dávkové testy
string. Povolené hodnoty: basedOnTestCases (Na základě počtu testů a agentů), basedOnExecutionTime (na základě doby posledního spuštění testů), basedOnAssembly (na základě testovacích sestavení). Výchozí hodnota: basedOnTestCases.

Dávka je skupina testů. Dávka testů spouští testy současně a výsledky se publikují pro dávku. Pokud je úloha, ve které se úloha spouští, nastavená tak, aby používala více agentů, každý agent vybere všechny dostupné dávky testů, které se spustí paralelně. Dávku je možné spustit:

na základě počtu testů a agentů. Jednoduché dávkování na základě počtu testů a agentů, kteří se účastní testovacího běhu.

v závislosti na minulé době spuštění testů. Toto dávkování bere v úvahu čas posledního spuštění a vytvoří dávky testů, kde má každá dávka přibližně stejnou dobu spuštění.

na základě testovacích sestavení. Testy ze sestavení jsou dávkové.


batchingBasedOnAgentsOption - Možnosti služby Batch
string. Nepovinný parametr. Použijte, když distributionBatchType = basedOnTestCases. Povolené hodnoty: autoBatchSize (Automaticky určit velikost dávky) customBatchSize (Zadejte velikost dávky). Výchozí hodnota: autoBatchSize.

Určuje jednoduché dávkování na základě počtu testů a agentů, kteří se účastní testovacího běhu. Když se velikost dávky určí automaticky, každá dávka obsahuje (total number of tests / number of agents) testy. Pokud je zadána velikost dávky, bude každá dávka obsahovat zadaný počet testů.


customBatchSizeValue - Počet testů na dávku
string. Vyžaduje se, když distributionBatchType = basedOnTestCases && batchingBasedOnAgentsOption = customBatchSize. Výchozí hodnota: 10.

Určuje velikost dávky.


batchingBasedOnExecutionTimeOption - Možnosti služby Batch
string. Nepovinný parametr. Použijte, když distributionBatchType = basedOnExecutionTime. Povolené hodnoty: autoBatchSize (Automaticky určit čas dávky) customTimeBatchSize (Zadejte dobu spuštění na dávku). Výchozí hodnota: autoBatchSize.

Toto dávkování bere v úvahu minulé doby spuštění a vytváří dávky testů, kde každá dávka má přibližně stejnou dobu spuštění. Rychle běžící testy budou rozděleny do jedné dávky, zatímco déle běžící testy můžou patřit do samostatné dávky. Při použití této možnosti s nastavením úlohy s více agenty se celková doba testování zkrátí na minimum.


customRunTimePerBatchValue - Doba spuštění (s) na dávku
string. Vyžaduje se, když distributionBatchType = basedOnExecutionTime && batchingBasedOnExecutionTimeOption = customTimeBatchSize. Výchozí hodnota: 60.

Určuje dobu běhu (v sekundách) na dávku.


dontDistribute - Replikace testů místo distribuce při použití více agentů v úloze
boolean. Výchozí hodnota: False.

Zvolením této možnosti se testy nerozdistribuují mezi agenty, pokud je úloha spuštěná v úloze s více agenty. Každý z vybraných testů se bude opakovat na každém agentovi. Tato možnost není použitelná, pokud je úloha agenta nakonfigurovaná tak, aby běžela bez paralelismu nebo s možností více konfigurací.


dontDistribute - Nedistribuujte testy a nereplikujte je, pokud se v úloze používá více agentů.
boolean. Výchozí hodnota: False.

Zvolením této možnosti se testy nerozdistribuují mezi agenty, pokud je úloha spuštěná v úloze s více agenty. Každý z vybraných testů se bude opakovat na každém agentovi. Tato možnost není použitelná, pokud je úloha agenta nakonfigurovaná tak, aby běžela bez paralelismu nebo s možností více konfigurací.


testRunTitle - Název testovacího běhu
string.

Určuje název testovacího běhu.


platform - Sestavení platformy
string.

Určuje platformu sestavení, proti které se mají hlásit testy. Pokud jste v úloze sestavení definovali proměnnou pro platformu, použijte ji s tímto vstupem.


configuration - Konfigurace sestavení
string.

Určuje konfiguraci sestavení, proti které se mají hlásit testy. Pokud jste v úloze sestavení definovali proměnnou pro konfiguraci, použijte ji s tímto vstupem.


publishRunAttachments - Nahrání testovacích příloh
boolean. Výchozí hodnota: true.

Odhlásí nebo zruší publikování příloh na úrovni spuštění.


failOnMinTestsNotRun - Pokud není spuštěn minimální počet testů, úloha se nezdaří.
boolean. Výchozí hodnota: False.

Úloha selže, pokud není spuštěn minimální počet testů. To může být užitečné v případě, že jakékoli změny vstupů úloh nebo závislostí adaptéru základního testu vedou pouze k podmnožině požadovaných testů, které se mají najít.


minimumExpectedTests - Minimální počet testů
string. Nepovinný parametr. Použijte, když failOnMinTestsNotRun = true. Výchozí hodnota: 1.

Určuje minimální počet testů, které se mají spustit, aby úloha byla úspěšná. Celkový počet provedených testů se počítá jako součet úspěšných, neúspěšných a přerušených testů.


diagnosticsEnabled - Shromažďování pokročilých diagnostických informací pro případ katastrofických selhání
boolean. Výchozí hodnota: false.

Shromažďuje diagnostická data pro řešení závažných selhání, jako je selhání testu. Pokud je tato možnost zaškrtnutá, vygeneruje se sekvenční soubor XML, který se připojí k testovacímu běhu. Sekvenční soubor obsahuje informace o sekvenci, ve které byly testy spuštěny, takže je možné identifikovat potenciálního viníka testu.


diagnosticsEnabled - Shromažďování pokročilých diagnostických informací pro případ katastrofických selhání
boolean. Výchozí hodnota: True.

Shromažďuje diagnostická data pro řešení závažných selhání, jako je selhání testu. Pokud je tato možnost zaškrtnutá, vygeneruje se sekvenční soubor XML, který se připojí k testovacímu běhu. Sekvenční soubor obsahuje informace o sekvenci, ve které byly testy spuštěny, takže je možné identifikovat potenciálního viníka testu.


collectDumpOn - Shromáždění výpisu procesu a připojení k sestavě testovacího běhu
string. Nepovinný parametr. Použijte, když diagnosticsEnabled = true. Povolené hodnoty: onAbortOnly (Pouze při přerušení), always, never. Výchozí hodnota: onAbortOnly.

Shromažďuje minivýpis, který lze použít k další analýze.

  • onAbortOnly – minimální výpis paměti se shromáždí jenom při přerušení testovacího běhu.
  • Vždy – minivýpis se bude shromažďovat vždy bez ohledu na to, jestli se testovací běh dokončí nebo ne.
  • Nikdy – minivýběr se neshromažďuje bez ohledu na to, jestli se testovací běh dokončí nebo ne.

rerunFailedTests - Opětovné spuštění neúspěšných testů
boolean. Výchozí hodnota: False.

Znovu spustí všechny neúspěšné testy, dokud neprojdou nebo dokud se nedosáhne maximálního počtu pokusů.


rerunType - Nespustit znovu, pokud selhání testů překročí zadanou prahovou hodnotu.
string. Nepovinný parametr. Použijte, když rerunFailedTests = true. Povolené hodnoty: basedOnTestFailurePercentage (% selhání), basedOnTestFailureCount (počet neúspěšných testů). Výchozí hodnota: basedOnTestFailurePercentage.

Vyhne se opakovanému spuštění testů, když míra selhání překročí zadanou prahovou hodnotu. To platí v případě, že problémy s prostředím vedou k rozsáhlým selháním. Jako prahovou hodnotu můžete zadat procento selhání nebo počet neúspěšných testů.


rerunFailedThreshold - % selhání
string. Nepovinný parametr. Použijte, když rerunFailedTests = true && rerunType = basedOnTestFailurePercentage. Výchozí hodnota: 30.

Vyhne se opakovanému spuštění testů, když procento neúspěšných testovacích případů překročí zadanou prahovou hodnotu. To platí v případě, že problémy s prostředím vedou k rozsáhlým selháním.


rerunFailedTestCasesMaxLimit - Počet neúspěšných testů
string. Nepovinný parametr. Použijte, když rerunFailedTests = true && rerunType = basedOnTestFailureCount. Výchozí hodnota: 5.

Vyhne se opakovanému spuštění testů, když počet neúspěšných testovacích případů překročí zadaný limit. To platí v případě, že problémy s prostředím vedou k rozsáhlým selháním.


rerunMaxAttempts - Maximální počet pokusů
string. Nepovinný parametr. Použijte, když rerunFailedTests = true. Výchozí hodnota: 3.

Určuje maximální počet opakování neúspěšného testu. Pokud test projde před dosažením maximálního počtu pokusů, znovu se nespustí.


Možnosti ovládání úloh

Všechny úlohy mají kromě vstupů také možnosti ovládání. Další informace najdete v tématu Možnosti ovládacích prvků a běžné vlastnosti úlohy.

Výstupní proměnné

Žádné

Poznámky

Pomocí této úlohy můžete spouštět testy jednotek a funkční testy (Selenium, Appium, programový test uživatelského rozhraní a další) pomocí spouštěče testů sady Visual Studio. Kromě testů založených na MSTest je možné spouštět také testovací architektury, které mají adaptér testů sady Visual Studio, například xUnit, NUnit nebo Chutzpah.

Testuje, že cílové rozhraní .NET Core Framework lze spustit zadáním příslušné hodnoty cílového rozhraní v souboru .runsettings.

Testy lze distribuovat na více agentů pomocí verze 2 této úlohy. Další informace najdete v tématu Paralelní spouštění testů pomocí úlohy Visual Studio Test.

Kontrola požadavků

Pokud používáte agenta Windows v místním prostředí, musí být nainstalovaný tento předpoklad:

Požadavky

Agent musí mít následující funkce:

vstest

Požadavek na vstest je možné splnit dvěma způsoby:

  1. Sada Visual Studio je nainstalovaná na počítači agenta.
  2. Pomocí úlohy instalačního programu testovací platformy sady Visual Studio v definici kanálu.

Jak můžu spustit testy, které jako zdroj dat používají testovací případ?

Ke spouštění automatizovaných testů, které jako zdroj dat používají testovací případ, je potřeba následující:

  1. Na počítači agenta musíte mít Visual Studio 2017.6 nebo novější. Úlohu instalačního programu testovací platformy sady Visual Studio nelze použít ke spouštění testů, které používají testcase jako zdroj dat.
  2. Vytvořte token PAT , který je autorizovaný pro obor Pracovní položky (úplné).
  3. Přidejte zabezpečenou proměnnou sestavení nebo verze s názvem Test.TestCaseAccessToken s hodnotou nastavenou na token PAT vytvořený v předchozím kroku.

Při spouštění testů xUnit a NUnit řízených daty dochází k problémům s některými možnostmi úlohy. Existují nějaká omezení?

Testy řízené daty, které používají testovací architektury xUnit a NUnit, mají určitá známá omezení a nelze je použít s následujícími možnostmi úlohy:

  1. Znovu spusťte neúspěšné testy.
  2. Distribuce testů na více agentů a možnosti dávkování
  3. Analýza dopadu testu.

Výše uvedená omezení jsou způsobená tím, jak adaptéry pro tyto testovací architektury zjišťují a hlásí testy řízené daty.

Podporuje úloha VSTest spouštění testů, které cílí na více cílových architektur najednou?

Ano, počínaje verzí 17.3 VSTest podporuje spouštění testů, které cílí na více cílových architektur najednou. Dříve to nebylo možné kvůli omezení na straně platformy VSTest .

Pokud chcete spouštět testy, které patří do více cílových architektur, budete muset nainstalovat kompatibilní verzi VSTest prostřednictvím instalačního programu testovací platformy sady Visual Studio a nastavit vsTestVersion na toolsInstaller jeho použití.

Při publikování výsledku testu se zobrazuje tato chyba: Nepodařilo se publikovat výsledky testu: Byla zadána neplatná priorita?

K této chybě dochází, pokud má některá z testovacích metod prioritu nastavenou nad 255, opravte prioritu testovací metody v kódu a spusťte testy znovu. Můžete zkontrolovat vygenerovaný soubor trx a zobrazit všechny testy s prioritou vyšší než 255.

Požadavky

Požadavek Popis
Typy kanálů YAML, classic build, verze Classic
Spustí se Agent, DeploymentGroup
Požadavky Agenti v místním prostředí musí mít funkce , které odpovídají následujícím požadavkům , aby bylo možné spouštět úlohy, které používají tuto úlohu: vstest
Možnosti Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze.
Omezení příkazů Všechny
Nastavitelné proměnné Všechny
Verze agenta 2.103.0 nebo vyšší
Kategorie úloh Test