Dela via


VSTest@2 – Visual Studio Test v2-uppgift

Använd den här uppgiften för att köra enhets- och funktionstester (Selenium, Appium, Coded UI-test osv.) med hjälp av Visual Studio Test-löparen (VSTest). Du kan köra testramverk som har ett Visual Studio-testkort. Exempelramverk är MSTest, xUnit, NUnit, Chutzpah (för JavaScript-tester med QUnit, Mocha och Jasmine) osv. Tester kan distribueras på flera agenter med hjälp av den här uppgiften.

Anmärkning

VSTest@3 är den senaste versionen av uppgiften och bör användas i dina pipelines.

Syntax

# Visual Studio Test v2
# Build, test, package, or publish a .NET application, or run a custom .NET CLI command.
- 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
# Build, test, package, or publish a .NET application, or run a custom .NET CLI command.
- 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.

Ingångar

testSelector - Välj tester med hjälp av
string. Obligatoriskt. Tillåtna värden: testAssemblies (testsammansättningar), testPlan (testplan), testRun (testkörning). Standardvärde: testAssemblies.

  • Testsammansättning: Anger en eller flera testsammansättningar som innehåller dina tester. Du kan också ange ett filtervillkor för att endast välja specifika tester.
  • Testplan: Kör tester från testplanen som har en automatiserad testmetod associerad med den. Mer information om hur du associerar tester med ett arbetsobjekt för testfall finns i Associera automatiserade tester med testfall.
  • Testkörning: Använd det här alternativet när du konfigurerar en miljö för att köra tester från testplaner. Det här alternativet bör inte användas när du kör tester i en CI/CD-pipeline (kontinuerlig integrering/kontinuerlig distribution).

testAssemblyVer2 - Testfiler
string. Krävs när testSelector = testAssemblies. Standardvärde: **\bin\**\*test.dll\n**\bin\**\*tests.dll.

Kör tester från de angivna filerna. Ordnade tester och webbtest kan köras genom att ange .orderedtest respektive .webtest filer. För att köra .webtestbehövs Visual Studio 2017 Update 4 eller senare. Filsökvägarna är relativa till sökmappen. Den här indatan stöder flera rader med minimatchmönster.

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

testAssemblyVer2 - Testfiler
string. Krävs när testSelector = testAssemblies. Standardvärde: **\*test*.dll\n!**\*TestAdapter.dll\n!**\obj\**.

Kör tester från de angivna filerna. Ordnade tester och webbtest kan köras genom att ange .orderedtest respektive .webtest filer. För att köra .webtestbehövs Visual Studio 2017 Update 4 eller senare. Filsökvägarna är relativa till sökmappen. Den här indatan stöder flera rader med minimatchmönster.

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

testPlan - testplan
string. Krävs när testSelector = testPlan.

Anger en testplan som innehåller testpaket med automatiserade testfall.


testSuite - Test suite
string. Krävs när testSelector = testPlan.

Anger en eller flera testpaket som innehåller automatiserade testfall. Arbetsobjekt för testfall måste associeras med en automatiserad testmetod.


testConfiguration - Testkonfiguration
string. Krävs när testSelector = testPlan.

Anger testkonfigurationen.


tcmTestRun - Test Run
string. Valfritt. Använd när testSelector = testRun. Standardvärde: $(test.RunId).

Anger det testkörningsbaserade val som används när automatiserade testkörningar utlöses från testplaner. Det här alternativet kan inte användas för att köra tester i CI/CD-pipelinen.


searchFolder - sökmapp
string. Obligatoriskt. Standardvärde: $(System.DefaultWorkingDirectory).

Anger mappen som ska söka efter testsammansättningarna.


resultsFolder - Mappen Testresultat
string. Standardvärde: $(Agent.TempDirectory)\TestResults.

Anger den mapp som testresultaten ska lagras i. När du använder standardkatalogen rensas den i slutet av en pipelinekörning. Resultatkatalogen rensas alltid i början av den vstest uppgiften innan testerna körs. Den relativa mappsökvägen, om den tillhandahålls, kommer att betraktas i förhållande till $(Agent.TempDirectory).


testFiltercriteria - Testfiltervillkor
string. Valfritt. Använd när testSelector = testAssemblies.

Anger ytterligare villkor för att filtrera tester från testsammansättningar. Till exempel: Priority=1|Name=MyTestMethod. Läs mer om kommandoradsalternativ.


runOnlyImpactedTests - Kör endast påverkade tester
boolean. Valfritt. Använd när testSelector = testAssemblies. Standardvärde: False.

Anger och kör automatiskt de tester som krävs för att verifiera kodändringen. Lär dig mer om att använda Test Impact Analysis.


runAllTestsAfterXBuilds - Antal versioner varefter alla tester ska köras
string. Valfritt. Använd när testSelector = testAssemblies && runOnlyImpactedTests = true. Standardvärde: 50.

Anger antalet versioner som ska köras innan alla tester körs automatiskt. Test Impact Analysis lagrar mappningen mellan testfall och källkod. Vi rekommenderar att du återskapar mappningen genom att köra alla tester regelbundet.


uiTests - Testmix innehåller användargränssnittstester
boolean. Standardvärde: false.

Om du vill köra användargränssnittstester kontrollerar du att agenten är inställd på att köras i interaktivt läge med Autologon aktiverat. Du måste konfigurera en agent som ska köras interaktivt innan du köar versionen/versionen. Om du markerar den här rutan konfigureras inte agenten i interaktivt läge automatiskt. Det här alternativet fungerar som en påminnelse om att konfigurera agenten på rätt sätt för att undvika fel. Värdbaserade Windows-agenter från VS 2015- och 2017-poolerna kan användas för att köra användargränssnittstester.


vstestLocationMethod - Välj testplattform med hjälp av
string. Tillåtna värden: version, location (specifik plats). Standardvärde: version.

Anger vilken testplattform som ska användas.


vsTestVersion - Test platform version
string. Valfritt. Använd när vstestLocationMethod = version. Tillåtna värden: latest, 17.0 (Visual Studio 2022), 16.0 (Visual Studio 2019), 15.0 (Visual Studio 2017), 14.0 (Visual Studio 2015), toolsInstaller (Installerat av verktyg Installer). Standardvärde: latest.

Anger vilken version av Visual Studio Test som ska användas. Om senaste har angetts väljer indata den senaste versionen (från listan över tillåtna värden) som är installerad. Om du vill köra tester utan att behöva Visual Studio på agenten använder du installationsalternativet Installerat av verktyg. Se till att inkludera Visual Studio Test Platform Installer uppgift för att hämta testplattformen från NuGet.


vsTestVersion - Test platform version
string. Valfritt. Använd när vstestLocationMethod = version. Tillåtna värden: latest, 16.0 (Visual Studio 2019), 15.0 (Visual Studio 2017), 14.0 (Visual Studio 2015), toolsInstaller (installerad av verktyg installer). Standardvärde: latest.

Anger vilken version av Visual Studio Test som ska användas. Om senaste har angetts väljer indata den senaste versionen (från listan över tillåtna värden) som är installerad. Om du vill köra tester utan att behöva Visual Studio på agenten använder du installationsalternativet Installerat av verktyg. Se till att inkludera Visual Studio Test Platform Installer uppgift för att hämta testplattformen från NuGet.


vstestLocation - sökväg till vstest.console.exe
string. Valfritt. Använd när vstestLocationMethod = location.

Anger sökvägen till VSTest.


runSettingsFile - Inställningsfil
string.

Anger sökvägen till en runsettings- eller testsettings fil som ska användas med testerna. För Visual Studio 15.7 och senare använder du runsettings för alla testtyper. Läs mer om konvertera en .testsettings fil till en .runsettings fil.


overrideTestrunParameters - åsidosätt testkörningsparametrar
string.

Åsidosätter parametrarna som definierats i avsnittet TestRunParameters i en runsettings fil eller Properties i en testsettings fil. Till exempel: -key1 value1 -key2 value2. Obs! egenskaper som anges i en testsettings fil kan nås via TestContext med Visual Studio 2017 (uppdatering 4 eller senare).


pathtoCustomTestAdapters - sökväg till anpassade testkort
string.

Anger katalogsökvägen till anpassade testkort. Kort som finns i samma mapp som testsammansättningarna identifieras automatiskt.


runInParallel - Köra tester parallellt på datorer med flera kärnor
boolean. Standardvärde: False.

Om värdet är inställt på truekörs testerna parallellt och utnyttjar tillgängliga kärnor på datorn. Detta åsidosätter MaxCpuCount om det anges i din runsettings-fil. Läs mer om hur tester körs parallellt.


runTestsInIsolation - Köra tester isolerat
boolean. Standardvärde: False.

Kör testerna i en isolerad process. Detta leder sannolikt till färre fel i vstest.console.exe testprocessen, men testerna kan köras långsammare. Det här alternativet kan för närvarande inte användas när du kör med jobbinställningen för flera agenter.


codeCoverageEnabled - Kodtäckning aktiverat
boolean. Standardvärde: False.

Samlar in information om kodtäckning från testkörningen.


otherConsoleOptions - Andra konsolalternativ
string.

Andra konsolalternativ som kan skickas till vstest.console.exe.

De här alternativen stöds inte och ignoreras när du kör tester med hjälp av inställningen parallella för ett agentjobb, när du kör tester med hjälp av Testplan eller Testkörning alternativ eller när ett anpassat batchningsalternativ har valts. Alternativen kan anges med hjälp av en inställningsfil i stället.


distributionBatchType - Batch-tester
string. Tillåtna värden: basedOnTestCases (baserat på antal tester och agenter), basedOnExecutionTime (baserat på tidigare körningstid för tester), basedOnAssembly (baserat på testsammansättningar). Standardvärde: basedOnTestCases.

En batch är en grupp med tester. En batch med tester kör sina tester samtidigt och resultaten publiceras för batchen. Om jobbet där aktiviteten körs är inställt på att använda flera agenter, plockar varje agent upp alla tillgängliga batchar med tester som ska köras parallellt. En batch kan köras:

baserat på antalet tester och agenter. Enkel batchbearbetning baserat på antalet tester och agenter som deltar i testkörningen.

baserat på den senaste körningstiden för tester. Den här batchbearbetningen tar hänsyn till den senaste körningstiden för att skapa batchar med tester där varje batch har ungefär lika med körningstid.

baserat på testsammansättningar. Tester från en sammansättning batchas tillsammans.


batchingBasedOnAgentsOption - Batch-alternativ
string. Valfritt. Använd när distributionBatchType = basedOnTestCases. Tillåtna värden: autoBatchSize (bestäm automatiskt batchstorleken), customBatchSize (Ange en batchstorlek). Standardvärde: autoBatchSize.

Anger enkel batchbearbetning baserat på antalet tester och agenter som deltar i testkörningen. När batchstorleken bestäms automatiskt innehåller varje batch (total number of tests / number of agents) tester. Om en batchstorlek anges innehåller varje batch det angivna antalet tester.


customBatchSizeValue - Antal tester per batch
string. Krävs när distributionBatchType = basedOnTestCases && batchingBasedOnAgentsOption = customBatchSize. Standardvärde: 10.

Anger batchstorleken.


batchingBasedOnExecutionTimeOption - Batch-alternativ
string. Valfritt. Använd när distributionBatchType = basedOnExecutionTime. Tillåtna värden: autoBatchSize (bestäm automatiskt batchtiden), customTimeBatchSize (Ange körningstid per batch). Standardvärde: autoBatchSize.

Den här batchbearbetningen tar hänsyn till tidigare körningstider för att skapa batchar med tester där varje batch har ungefär lika med körningstid. Snabbkörningstester batchas tillsammans, medan tester som körs längre kan tillhöra en separat batch. När det här alternativet används med jobbinställningen för flera agenter minskas den totala testtiden till ett minimum.


customRunTimePerBatchValue - Körningstid (sek) per batch
string. Krävs när distributionBatchType = basedOnExecutionTime && batchingBasedOnExecutionTimeOption = customTimeBatchSize. Standardvärde: 60.

Anger körningstiden (i sekunder) per batch.


dontDistribute - Replikera tester i stället för att distribuera när flera agenter används i jobbet
boolean. Standardvärde: False.

Om du väljer det här alternativet distribueras inte tester mellan agenter när uppgiften körs i ett jobb med flera agenter. Var och en av de valda testerna upprepas på varje agent. Det här alternativet gäller inte när agentjobbet är konfigurerat att köras utan parallellitet eller med alternativet för flera konfigurationer.


testRunTitle - Testkörningstitel
string.

Anger ett namn för testkörningen.


platform - Build-plattform
string.

Anger den byggplattform som testerna ska rapporteras mot. Om du har definierat en variabel för plattformen i din bygguppgift använder du den med dessa indata.


configuration - Build-konfiguration
string.

Anger den byggkonfiguration som testerna ska rapporteras mot. Om du har definierat en variabel för konfiguration i bygguppgiften använder du den med den här indatan.


publishRunAttachments - Ladda upp testbilagor
boolean. Standardvärde: true.

Anmäler dig till eller från publiceringskörningsnivåbilagor.


failOnMinTestsNotRun - Misslyckas uppgiften om ett minsta antal tester inte körs.
boolean. Standardvärde: False.

Aktiviteten misslyckas om ett minsta antal tester inte körs. Detta kan vara användbart om eventuella ändringar av aktivitetsindata eller underliggande beroenden för testkort leder till att endast en delmängd av de önskade testerna hittas.


minimumExpectedTests - Lägsta antal tester
string. Valfritt. Använd när failOnMinTestsNotRun = true. Standardvärde: 1.

Anger det minsta antalet tester som ska köras för att aktiviteten ska lyckas. Det totala antalet tester som körs beräknas som summan av utförda, misslyckade och avbrutna tester.


diagnosticsEnabled - Samla in avancerad diagnostik vid katastrofala fel
boolean. Standardvärde: false.

Samlar in diagnostikdata för att felsöka katastrofala fel, till exempel en testkrasch. När det här alternativet är markerat genereras en SEKVENS-XML-fil och kopplas till testkörningen. Sekvensfilen innehåller information om sekvensen där testerna hade körts, så att ett potentiellt test kan identifieras.


collectDumpOn - Samla in processdump och koppla till testkörningsrapport
string. Valfritt. Använd när diagnosticsEnabled = true. Tillåtna värden: onAbortOnly (endast vid avbruten), always, never. Standardvärde: onAbortOnly.

Samlar in en minidump som kan användas för ytterligare analys.

  • onAbortOnly – en minidump samlas bara in när testkörningen avbryts.
  • Always – en minidump samlas alltid in oavsett om testkörningen har slutförts eller inte.
  • Aldrig – en minidump samlas inte in oavsett om testkörningen har slutförts eller inte.

rerunFailedTests - Kör om misslyckade tester
boolean. Standardvärde: False.

Kör om misslyckade tester tills de har godkänts eller tills det maximala antalet försök har nåtts.


rerunType - Kör inte igen om testfel överskrider det angivna tröskelvärdet
string. Valfritt. Använd när rerunFailedTests = true. Tillåtna värden: basedOnTestFailurePercentage (% fel), basedOnTestFailureCount (antal misslyckade tester). Standardvärde: basedOnTestFailurePercentage.

Undviker att köra tester igen när felfrekvensen överskrider det angivna tröskelvärdet. Detta gäller om miljöproblem leder till massiva fel. Du kan ange procentandelen fel eller antalet misslyckade tester som tröskelvärde.


rerunFailedThreshold - % fel
string. Valfritt. Använd när rerunFailedTests = true && rerunType = basedOnTestFailurePercentage. Standardvärde: 30.

Undviker att köra tester igen när procentandelen misslyckade testfall överskrider det angivna tröskelvärdet. Detta gäller om miljöproblem leder till massiva fel.


rerunFailedTestCasesMaxLimit - antal misslyckade tester
string. Valfritt. Använd när rerunFailedTests = true && rerunType = basedOnTestFailureCount. Standardvärde: 5.

Undviker att köra tester igen när antalet misslyckade testfall överskrider den angivna gränsen. Detta gäller om miljöproblem leder till massiva fel.


rerunMaxAttempts - Maximalt antal försök
string. Valfritt. Använd när rerunFailedTests = true. Standardvärde: 3.

Anger det maximala antalet gånger som ett misslyckat test ska utföras igen. Om ett test godkänns innan det maximala antalet försök har nåtts, kommer det inte att köras igen.


Kontrollalternativ för aktivitet

Alla aktiviteter har kontrollalternativ utöver sina aktivitetsindata. Mer information finns i Kontrollalternativ och vanliga uppgiftsegenskaper.

Utdatavariabler

Ingen.

Anmärkningar

Använd den här uppgiften för att köra enhets- och funktionstester (Selenium, Appium, Coded UI-test med mera) med hjälp av Visual Studio Test runner. Tillsammans med MSTest-baserade tester kan även testramverk som har ett Visual Studio-testkort köras, till exempel xUnit, NUnit eller Chutzpah.

Testar att .NET Core-målramverket kan köras genom att ange lämpligt målramverksvärde i filen .runsettings.

Tester kan distribueras på flera agenter med hjälp av version 2 av den här uppgiften. Mer information finns i Köra tester parallellt med hjälp av Visual Studio-testuppgiften.

Kontrollera kraven

Om du använder en lokalt installerad Windows-agent måste den här förutsättningen vara installerad:

Krav

Agenten måste ha följande funktion:

vstest

Vstest-efterfrågan kan uppfyllas på två sätt:

  1. Visual Studio är installerat på agentdatorn.
  2. Med hjälp av Visual Studio Test Platform Installer-uppgift i pipelinedefinitionen.

Hur kan jag köra tester som använder TestCase som datakälla?

För att köra automatiserade tester som använder TestCase som datakälla krävs följande:

  1. Du måste ha Visual Studio 2017.6 eller senare på agentdatorn. Visual Studio Test Platform Installer-uppgiften kan inte användas för att köra tester som använder TestCase som datakälla.
  2. Skapa en PAT- som har behörighet för omfånget "Arbetsobjekt (fullständig)".
  3. Lägg till en säker versionsvariabel med namnet Test.TestCaseAccessToken med värdet inställt på den PAT som skapades i föregående steg.

Jag stöter på problem när jag kör datadrivna xUnit- och NUnit-tester med några av uppgiftsalternativen. Finns det kända begränsningar?

Datadrivna tester som använder xUnit- och NUnit-testramverk har vissa kända begränsningar och kan inte användas med följande uppgiftsalternativ:

  1. Kör om misslyckade tester.
  2. Distribuera tester på flera agenter och batchningsalternativ.
  3. Analys av testpåverkan.

Ovanstående begränsningar beror på hur korten för dessa testramverk identifierar och rapporterar datadrivna tester.

Stöder VSTest-uppgiften att köra tester som riktar sig mot flera målramverk åt gången?

Ja, från och med version 17.3 HAR VSTest stöd för att köra tester som riktar sig mot flera målramverk i taget. Innan dess var detta inte möjligt på grund av en begränsning från VSTest-plattformen sidan.

Om du vill köra tester som tillhör flera målramverk måste du installera en kompatibel version av VSTest via Visual Studio Test Platform Installer och ange vsTestVersion till toolsInstaller att använda den.

När du publicerar testresultatet får du följande fel: Det gick inte att publicera testresultat: Ogiltig prioritet har angetts?

Det här felet uppstår om någon av testmetoderna har prioritet över 255, åtgärdar testmetodens prioritet i koden och kör testerna igen. Du kan granska trx-filen som genererats för att se alla tester som har prioritet större än 255.

Krav

Krav Beskrivning
Pipelinetyper YAML, klassisk version, klassisk version
Körs på Agent, DeploymentGroup
kräver Lokalt installerade agenter måste ha funktioner som matchar följande kräver för att köra jobb som använder den här uppgiften: vstest
funktioner Den här aktiviteten uppfyller inte några krav på efterföljande uppgifter i jobbet.
Kommandobegränsningar Vilken som helst
variabler som kan Vilken som helst
Agentversion 2.103.0 eller senare
Aktivitetskategori Test