VSTest@2 – úloha Visual Studio Test v2

Pomocí této úlohy můžete spouštět testy jednotek a funkční testy (Selenium, Appium, programový test uživatelského rozhraní atd.) pomocí spouštěče testů sady Visual Studio (VSTest). Můžete spustit testovací architektury, které mají adaptér testů sady Visual Studio. Příkladem architektur jsou MSTest, xUnit, NUnit, Chutzpah (pro javascriptové testy využívající QUnit, Mocha a Jasmine) atd. Pomocí této úlohy je možné distribuovat testy do více agentů.

Poznámka

VSTest@2 je nejnovější verze úlohy a měla by se používat ve vašich kanálech.

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 (Testovací běh). 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 v uvedeném pořadí. Ke spuštění .webtestje potřeba Visual Studio 2017 Update 4 nebo vyšší. Cesty k souborům jsou relativní vzhledem ke složce výsledků hledání. Tento vstup podporuje více řádků vzorů minimatch.

# 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 v uvedeném pořadí. Ke spuštění .webtestje potřeba Visual Studio 2017 Update 4 nebo vyšší. Cesty k souborům jsou relativní vzhledem ke složce výsledků hledání. Tento vstup podporuje více řádků vzorů minimatch.

# 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í sady testů s automatizovanými testovacími případy.


testSuite - Sada testů
string. Vyžaduje se, když testSelector = testPlan.

Určuje jednu nebo více sad testů 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 na základě testovacího běhu, který se použije při aktivaci automatizovaných testovacích běhů z testovacích plánů. Tuto možnost nelze použít ke spouštění testů v kanálu CI/CD.


searchFolder - Složka výsledků hledání
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. Relativní cesta ke složce, pokud je za poskytnuta, 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. Seznamte se s používáním 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čujeme mapování znovu vygenerovat 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 je nutné provést před zařaováním sestavení nebo vydání do fronty. Zaškrtnutím tohoto políčka nedojde k automatické konfiguraci agenta v interaktivním režimu. Tato možnost slouží jako připomenutí správné konfigurace agenta, aby nedocházelo k 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, která testovací platforma se má použít.


vsTestVersion - Testovací 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 hodnota nejnovější , 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 na agenta, použijte možnost instalačního programu Nainstalované nástroji . Nezapomeňte zahrnout úlohu instalačního programu testovací platformy sady Visual Studio , abyste testovací platformu získali z NuGetu.


vsTestVersion - Testovací 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 hodnota nejnovější , 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 na agenta, použijte možnost instalačního programu Nainstalované nástroji . Nezapomeňte zahrnout úlohu instalačního programu testovací platformy sady Visual Studio , abyste testovací platformu získali 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 runsettings souboru nebo testsettings pro použití s testy. Pro Visual Studio 15.7 a vyšší 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 běhu
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 je možné 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í jsou automaticky zjištěny.


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í 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 - Spouštění testů v izolaci
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 do vstest.console.exe.

Tyto možnosti nejsou podporovány a budou ignorovány při spouštění testů pomocí paralelního nastavení úlohy agenta pro více agentů , při spouštění testů pomocí možnosti Testovací plán nebo Testovací běh nebo při výběru vlastní možnosti dávkování. Možnosti je možné 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 uplynulého běhu testů), basedOnAssembly (Na základě sestavení testů). Výchozí hodnota: basedOnTestCases.

Dávka je skupina testů. Dávka testů spouští testy ve stejnou dobu 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 převezme 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ů účastnících se testovacího běhu.

v závislosti na minulé době běhu testů. Toto dávkování bere v úvahu minulou dobu spuštění při vytváření dávek testů, kde má každá dávka přibližně stejnou dobu spuštění.

na základě testovacích sestavení. Testy ze sestavení se seskupují do dávek.


batchingBasedOnAgentsOption - Možnosti služby Batch
string. Nepovinný parametr. Použijte, když distributionBatchType = basedOnTestCases. Povolené hodnoty: autoBatchSize (Automaticky určí 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ů účastnících se 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čí čas dávky), customTimeBatchSize (Zadejte dobu běhu na dávku). Výchozí hodnota: autoBatchSize.

Při tomto dávkování se při vytváření dávek při vytváření dávek testů bere v úvahu minulé doby spuštění, přičemž každá dávka má přibližně stejnou dobu spuštění. Rychle běžící testy budou rozděleny do dávek, zatímco testy s delším provozem 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 - Replikujte testy místo distribuce, když se v úloze používá více agentů.
boolean. Výchozí hodnota: False.

Zvolení této možnosti nedistribuuje testy mezi agenty, pokud je úloha spuštěná v úloze s více agenty. Každý z vybraných testů se bude opakovat u každého agenta. 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 místo toho replikujte, pokud se v úloze používá více agentů.
boolean. Výchozí hodnota: False.

Zvolení této možnosti nedistribuuje testy mezi agenty, pokud je úloha spuštěná v úloze s více agenty. Každý z vybraných testů se bude opakovat u každého agenta. 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.

Pokud není spuštěn minimální počet testů, úloha selže. To může být užitečné v případě, že jakékoli změny vstupů úkolů nebo závislostí základního testovacího adaptéru 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 vypočítá jako součet úspěšných, neúspěšných a přerušených testů.


diagnosticsEnabled - Shromažďování pokročilé diagnostiky v případě katastrofických selhání
boolean. Výchozí hodnota: false.

Shromažďuje diagnostická data za účelem řešení potíží se katastrofickými chybami, jako je selhání testu. Při zaškrtnutí této možnosti se vygeneruje sekvenční soubor XML, který se připojí k testovacímu běhu. Soubor sekvence obsahuje informace o sekvenci, ve které byly testy spuštěny, takže je možné identifikovat potenciální test viníků.


diagnosticsEnabled - Shromažďování pokročilé diagnostiky v případě katastrofických selhání
boolean. Výchozí hodnota: True.

Shromažďuje diagnostická data za účelem řešení potíží se katastrofickými chybami, jako je selhání testu. Při zaškrtnutí této možnosti se vygeneruje sekvenční soubor XML, který se připojí k testovacímu běhu. Soubor sekvence obsahuje informace o sekvenci, ve které byly testy spuštěny, takže je možné identifikovat potenciální test viníků.


collectDumpOn - Shromáždění výpisu procesu a připojení k sestavě testovacího spuštění
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 mini výpis paměti, který lze použít k další analýze.

  • onAbortOnly – mini výpis paměti se bude shromažďovat pouze v případech, kdy je testovací běh přerušen.
  • Vždy – minimální výpis paměti se bude vždy shromažďovat bez ohledu na to, jestli se testovací běh dokončí nebo ne.
  • Nikdy – mini výpis paměti se neshromáždí 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 opaková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 opaková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 opaková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ího prvku a běžné vlastnosti úlohy.

Výstupní proměnné

Žádné

Poznámky

Tuto úlohu použijte ke spuštění testů jednotek a funkčních testů (Selenium, Appium, Programový test uživatelského rozhraní a další) pomocí nástroje Visual Studio Test Runner. Spolu s testy založenými na MSTest je možné spustit také testovací architektury, které mají testovací adaptér sady Visual Studio, například xUnit, NUnit nebo Chutzpah.

Testy, které cílové rozhraní .NET Core Framework lze provést zadáním příslušné hodnoty cílové architektury 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 v místním prostředí pro Windows, musí být nainstalována tato součást:

Požadavky

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

vstest

Požadavky na vstest lze splnit dvěma způsoby:

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

Jak můžu spustit testy, které jako zdroj dat používají TestCase?

Ke spouštění automatizovaných testů, které jako zdroj dat používají TestCase, 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é jako zdroj dat používají TestCase.
  2. Create pat, který je autorizovaný pro rozsah "Pracovní položky (úplné)".
  3. Přidejte proměnnou zabezpečeného sestavení nebo verze s názvem Test.TestCaseAccessToken s hodnotou nastavenou na 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í známá omezení?

Testy řízené daty, které používají testovací architektury xUnit a NUnit, mají některá 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 tato testovací rozhraní 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, od verze 17.3 VSTest podporuje spouštění testů, které cílí na více cílových architektur najednou. Předtím 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 sady Visual Studio Test Platform a nastavit vsTestVersion ji tak toolsInstaller , aby ji používala.

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 nastavenou prioritu vyšší než 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