Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ezzel a feladattal egység- és funkcionális teszteket (Selenium, Appium, Coded UI-teszt stb.) futtathat a Visual Studio Test (VSTest) futójával. Futtathat Visual Studio tesztadapterrel rendelkező tesztelési keretrendszereket. Ilyen keretrendszerek például az MSTest, az xUnit, az NUnit, a Chutzpah (a QUnit, a Mocha és a Jasmine használatával végzett JavaScript-tesztekhez) stb. A teszteket több ügynökön is el lehet osztani ezzel a feladattal.
Megjegyzés:
VSTest@3 a feladat legújabb verziója, amelyet a folyamatokban kell használni.
Megjegyzés:
A VSTest@3 feladat nem tudja újrafuttatni a sikertelen adatvezérelt teszteket.
Megjegyzés:
A VSTest Azure-feladat a VSTest-platformra jellemző. Nem támogatja az újabb Microsoft.Testing.Platform (MTP) verziót.
Szemantika
# Visual Studio Test v3
# 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 and later).
- task: VSTest@3
inputs:
#azureSubscription: # string. Alias: ConnectedServiceName. Azure Resource Manager connection.
# 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.
#donotPublishTestResults: false # boolean. Optional. Use when runInParallel = false. Disable publishing test results. Default: false.
#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.
Bemenetek
azureSubscription
-
Azure Resource Manager-kapcsolat
Bemeneti alias: ConnectedServiceName.
string.
Adjon meg egy Azure Resource Manager-szolgáltatáskapcsolatot, amely a számítási feladatok identitás-összevonásával van konfigurálva az AzurePipelinesCredential integrációs tesztekben való használatára. További információ: Az AzurePipelinesCredential használata integrációs tesztekben.
Megjegyzés:
Ez a bemenet csak a számítási feladatok identitás-összevonására konfigurált ARM-szolgáltatáskapcsolatokat támogatja.
testSelector
-
Tesztek kiválasztása a használatával
string. Szükséges. Engedélyezett értékek: testAssemblies (Tesztszerelvények), testPlan (Tesztterv), testRun (Tesztfuttatás). Alapértelmezett érték: testAssemblies.
- tesztszerelvény: Egy vagy több tesztszerelvényt határoz meg, amelyek tartalmazzák a teszteket. Megadhat egy szűrőfeltételeket, amelyek csak adott teszteket jelölnek ki.
- tesztcsomag: Olyan teszteket futtat a teszttervből, amelyekhez egy automatizált tesztelési módszer van társítva. Ha többet szeretne megtudni arról, hogyan társíthat teszteket egy teszteset munkaeleméhez, olvassa el Automatizált tesztek társítása tesztesetekkel.
- Tesztfuttatás: Akkor használja ezt a beállítást, ha olyan környezetet állít be, amely tesztcsomagokból futtat teszteket. Ez a beállítás nem használható tesztek folyamatos integrációs/folyamatos üzembe helyezési (CI/CD) folyamatban való futtatásakor.
testAssemblyVer2
-
fájlok tesztelése
string.
testSelector = testAssembliesesetén kötelező. Alapértelmezett érték: **\bin\**\*test.dll\n**\bin\**\*tests.dll.
Teszteket futtat a megadott fájlokból. A rendezett tesztek és webtesztek a .orderedtest és .webtest fájlok megadásával futtathatók. A .webtestfuttatásához a Visual Studio 2017 4- vagy újabb frissítésére van szükség. A fájl elérési útjai a keresési mappához képest vannak. Ez a bemenet több sornyi minimatch mintát támogat.
# Example
- task: VSTest@3
inputs:
testSelector: 'testAssemblies'
testAssemblyVer2: |
**\*test*.dll
!**\*TestAdapter.dll
!**\obj\**
testPlan
-
tesztelési terv
string.
testSelector = testPlanesetén kötelező.
Olyan tesztcsomagot határoz meg, amely automatizált tesztesetekkel rendelkező tesztcsomagokat tartalmaz.
testSuite
-
Tesztcsomag
string.
testSelector = testPlanesetén kötelező.
Egy vagy több, automatizált teszteseteket tartalmazó tesztcsomagot határoz meg. A teszteset munkaelemeit egy automatizált vizsgálati módszerhez kell társítani.
testConfiguration
-
konfigurációs tesztelése
string.
testSelector = testPlanesetén kötelező.
Megadja a tesztkonfigurációt.
tcmTestRun
-
tesztfuttatási
string. Opcionális. Használja a testSelector = testRun. Alapértelmezett érték: $(test.RunId).
A tesztfuttatáson alapuló kiválasztást adja meg, amelyet az automatikus tesztfuttatások tesztcsomagokaktiválásakor használ. Ez a beállítás nem használható a CI/CD-folyamat tesztjeinek futtatásához.
searchFolder
-
Keresési mappa
string. Szükséges. Alapértelmezett érték: $(System.DefaultWorkingDirectory).
Megadja a tesztszerelvények kereséséhez szükséges mappát.
resultsFolder
-
Teszteredmények mappa
string. Alapértelmezett érték: $(Agent.TempDirectory)\TestResults.
Megadja a teszteredmények tárolására használt mappát. Az alapértelmezett könyvtár használatakor a rendszer a folyamatfuttatás végén megtisztítja azt. Az eredmények könyvtára mindig a vstest feladat elején lesz eltávolítva a tesztek futtatása előtt. Ha meg van adva a relatív mappa elérési útja, akkor a rendszer a $(Agent.TempDirectory).
testFiltercriteria
-
szűrőfeltételek tesztelése
string. Opcionális. Használja a testSelector = testAssemblies.
A tesztszerelvények tesztjeinek szűrésére vonatkozó további feltételeket határoz meg. Például: Priority=1|Name=MyTestMethod. Használhatja - a szűrő tagadását. A szűrőkkel és beállításokkal kapcsolatos további információkért lásd: Keresés és szűrés a tesztlistában.
További információ parancssori beállításokról.
runOnlyImpactedTests
-
Csak az érintett tesztek futtatása
boolean. Opcionális. Használja a testSelector = testAssemblies. Alapértelmezett érték: False.
Automatikusan megadja és futtatja a kódmódosítás ellenőrzéséhez szükséges teszteket. További információ a teszthatás-elemzésihasználatáról.
runAllTestsAfterXBuilds
-
Buildek száma, amelyek után az összes tesztet futtatni kell
string. Opcionális. Használja a testSelector = testAssemblies && runOnlyImpactedTests = true. Alapértelmezett érték: 50.
Megadja az összes teszt automatikus futtatása előtt végrehajtandó buildek számát. A Test Impact Analysis tárolja a tesztelési esetek és a forráskód közötti leképezést. Javasoljuk, hogy az összes teszt rendszeres futtatásával újragenerálja a leképezést.
uiTests
-
Teszt mix felhasználói felületi teszteket tartalmaz
boolean. Alapértelmezett érték: false.
Felhasználói felületi tesztek futtatásához győződjön meg arról, hogy az ügynök interaktív módban fut,autologon engedélyezve van. Az ügynök interaktív futtatásának beállítását a build/kiadás várólistára helyezése előtt kell elvégezni. A jelölőnégyzet bejelölése nem konfigurálja automatikusan az ügynököt interaktív módban. Ez a beállítás emlékeztetőként szolgál az ügynök megfelelő konfigurálására a hibák elkerülése érdekében. A VS 2015- és 2017-készletekben tárolt Windows-ügynökök felhasználói felületi tesztek futtatására használhatók.
vstestLocationMethod
-
Tesztplatform kiválasztása
string. Engedélyezett értékek: version, location (Adott hely). Alapértelmezett érték: version.
Meghatározza a használni kívánt tesztplatformot.
vsTestVersion
-
platformverzió tesztelése
string. Opcionális. Használja a vstestLocationMethod = version. Engedélyezett értékek: latest, 17.0 (Visual Studio 2022), 16.0 (Visual Studio 2019), 15.0 (Visual Studio 2017), 14.0 (Visual Studio 2015), toolsInstaller (a Tools Installer telepítette). Alapértelmezett érték: latest.
A Használni kívánt Visual Studio-teszt verzióját adja meg. Ha legújabb van megadva, ez a bemenet a telepített legújabb verziót (az engedélyezett értékek listájából) választja ki. Ha anélkül szeretne teszteket futtatni, hogy a Visual Studio szükséges az ügynökön, használja a Az eszközök telepítője lehetőséget. Ügyeljen arra, hogy a Visual Studio Test Platform Installer feladatot is belefoglalja a tesztplatform NuGetből való beszerzéséhez.
vstestLocation
-
elérési út a vstest.console.exe
string. Opcionális. Használja a vstestLocationMethod = location.
Megadja a VSTest elérési útját.
runSettingsFile
-
Beállítások fájl
string.
Megadja a tesztekkel használni kívánt runsettings vagy testsettings fájl elérési útját. A Visual Studio 15.7-ben és újabb verzióiban használja a runsettings minden teszttípushoz. További információ .testsettings fájlok .runsettings fájllá alakításáról.
overrideTestrunParameters
-
tesztfuttatási paraméterek felülbírálása
string.
Felülbírálja egy TestRunParameters fájl runsettings szakaszában vagy egy Properties fájl testsettings szakaszában definiált paramétereket. Például: -key1 value1 -key2 value2.
Megjegyzés:testsettings fájlban megadott tulajdonságok a TestContext keresztül érhetők el a Visual Studio 2017 használatával (4. vagy újabb frissítés).
pathtoCustomTestAdapters
-
egyéni tesztadapter elérési útja
string.
Megadja az egyéni tesztadapterekhez vezető könyvtár elérési útját. A rendszer automatikusan felderíti azokat az adaptereket, amelyek ugyanabban a mappában találhatók, mint a tesztszerelvények.
runInParallel
-
Tesztek párhuzamos futtatása többmagos gépeken
boolean. Alapértelmezett érték: False.
Ha trueértékre van állítva, a tesztek párhuzamosan futnak, és kihasználják a gép rendelkezésre álló magjait. Ez felülbírálja a MaxCpuCount, ha a runsettings fájlban van megadva. További információ a tesztek párhuzamos futtatásáról.
runTestsInIsolation
-
Tesztek futtatása elkülönítve
boolean. Alapértelmezett érték: False.
A teszteket izolált folyamatban futtatja. Ez valószínűleg kevesebb hibát okoz a vstest.console.exe tesztfolyamatban, de a tesztek lassabban futnak. Ez a beállítás jelenleg nem használható a többügynök-feladat beállításával való futtatáskor.
codeCoverageEnabled
-
kódlefedettség engedélyezett
boolean. Alapértelmezett érték: False.
A tesztfuttatás kódlefedettségi adatait gyűjti össze.
otherConsoleOptions
-
Egyéb konzolbeállítások
string.
Egyéb konzolbeállítások, amelyek átadhatók vstest.console.exe.
Ezek a beállítások nem támogatottak, és figyelmen kívül lesznek hagyva, amikor egy ügynökfeladat többügynök párhuzamos beállításával futtat teszteket, amikor teszteket futtat a Tesztcsomag vagy Tesztfuttatási beállítással, vagy ha egyéni kötegelési beállítás van kiválasztva. A beállításokat ehelyett egy beállításfájllal adhatja meg.
distributionBatchType
-
Batch-tesztek
string. Megengedett értékek: basedOnTestCases (a tesztek és ügynökök száma alapján), basedOnExecutionTime (A tesztek korábbi futási ideje alapján), basedOnAssembly (tesztszerelvények alapján). Alapértelmezett érték: basedOnTestCases.
A köteg tesztek csoportja. Egy tesztköteg egyszerre futtatja a teszteket, és az eredmények közzé lesznek téve a köteghez. Ha a feladat, amelyben a feladat fut, több ügynök használatára van beállítva, minden ügynök felveszi az elérhető tesztkötegeket, hogy párhuzamosan fussanak. A köteg futtatható:
a tesztek és ügynökök száma alapján. Egyszerű kötegelés a tesztfuttatásban részt vevő tesztek és ügynökök száma alapján.
a tesztek korábbi futási ideje alapján. Ez a kötegelés figyelembe veszi az elmúlt futási időt olyan tesztkötegek létrehozásához, ahol az egyes kötegek futási ideje körülbelül egyenlő.
a tesztszerelvények alapján. Egy szerelvény tesztjei össze vannak kötegelve.
batchingBasedOnAgentsOption
-
Batch-beállítások
string. Opcionális. Használja a distributionBatchType = basedOnTestCases. Engedélyezett értékek: autoBatchSize (a köteg méretének automatikus meghatározása), customBatchSize (Kötegméret megadása). Alapértelmezett érték: autoBatchSize.
Egyszerű kötegelést határoz meg a tesztfuttatásban részt vevő tesztek és ügynökök száma alapján. A kötegméret automatikus meghatározásakor minden köteg (total number of tests / number of agents) teszteket tartalmaz. Ha a kötegméret meg van adva, minden köteg a megadott számú tesztet tartalmazza.
customBatchSizeValue
-
Tesztek száma kötegenként
string.
distributionBatchType = basedOnTestCases && batchingBasedOnAgentsOption = customBatchSizeesetén kötelező. Alapértelmezett érték: 10.
Megadja a köteg méretét.
batchingBasedOnExecutionTimeOption
-
Batch-beállítások
string. Opcionális. Használja a distributionBatchType = basedOnExecutionTime. Engedélyezett értékek: autoBatchSize (a köteg idő automatikus meghatározása), customTimeBatchSize (A kötegenkénti futási idő megadása). Alapértelmezett érték: autoBatchSize.
Ez a kötegelés a korábbi futási időket tekinti át olyan tesztkötegek létrehozásához, ahol az egyes kötegek futási ideje körülbelül egyenlő. A gyorstesztek kötegelve lesznek, míg a hosszabb ideig futó tesztek külön köteghez tartozhatnak. Ha ezt a beállítást használja a többügynök-feladat beállításával, a teljes tesztelési idő minimálisra csökken.
customRunTimePerBatchValue
-
futási idő (mp) kötegenként
string.
distributionBatchType = basedOnExecutionTime && batchingBasedOnExecutionTimeOption = customTimeBatchSizeesetén kötelező. Alapértelmezett érték: 60.
A kötegenkénti futási időt (másodpercben) adja meg.
dontDistribute
-
Tesztek replikálása ahelyett, hogy több ügynököt használnak a feladatban
boolean. Alapértelmezett érték: False.
Ha ezt a lehetőséget választja, nem osztja el a teszteket az ügynökök között, ha a feladat többügynök-feladatban fut. A kiválasztott teszt(ek) minden ügynökön meg lesznek ismételve. Ez a beállítás nem alkalmazható, ha az ügynökfeladat úgy van konfigurálva, hogy párhuzamosság nélkül vagy a többkonfigurációs beállítással fusson.
testRunTitle
-
tesztelési cím
string.
Megadja a tesztfuttatás nevét.
platform
-
Platform létrehozása
string.
Meghatározza azt a buildplatformot, amelyen a teszteket jelenteni kell. Ha definiált egy változót a platformhoz a buildelési feladatban, használja ezt a bemenetet.
configuration
-
Buildkonfigurációs
string.
Megadja azt a buildkonfigurációt, amely alapján a teszteket jelenteni kell. Ha definiált egy konfigurációs változót a buildelési feladatban, használja ezt a bemenetet.
publishRunAttachments
-
Tesztmellékletek feltöltése
boolean. Alapértelmezett érték: true.
A futtatási szintű mellékletek közzétételének engedélyezése vagy letiltása.
donotPublishTestResults
-
Teszteredmények közzétételének letiltása
boolean. Opcionális. Használja a runInParallel = false. Alapértelmezett érték: false.
Ha ez a beállítás be van kapcsolva, a teszteredmények nem lesznek közzétéve a feladat részeként. Használja ehelyett a Teszteredmények közzététele feladatot.
failOnMinTestsNotRun
-
Sikertelen a feladat, ha nem fut minimális számú teszt.
boolean. Alapértelmezett érték: False.
A feladat meghiúsul, ha a tesztek minimális száma nem fut. Ez akkor lehet hasznos, ha a tevékenységbemenetek vagy az alapul szolgáló tesztadapter-függőségek módosítása csak a kívánt tesztek egy részhalmazához vezet.
minimumExpectedTests
-
tesztek minimális száma
string. Opcionális. Használja a failOnMinTestsNotRun = true. Alapértelmezett érték: 1.
Megadja a feladat sikeres végrehajtásához futtatandó tesztek minimális számát. A végrehajtott tesztek teljes összegét az átadott, sikertelen és megszakított tesztek összegeként számítja ki a rendszer.
diagnosticsEnabled
-
Speciális diagnosztikák gyűjtése katasztrofális hibák esetén
boolean. Alapértelmezett érték: false.
Diagnosztikai adatokat gyűjt a katasztrofális hibák, például a teszt összeomlásának elhárításához. Ha ez a beállítás be van jelölve, a rendszer létrehoz egy sorozat xml-fájlt, és csatolja a tesztfuttatáshoz. A szekvenciafájl információkat tartalmaz arról a sorozatról, amelyben a tesztek futottak, így lehetséges bűnösségi teszt azonosítható.
collectDumpOn
-
Folyamatkép összegyűjtése és csatolás a tesztfuttatási jelentéshez
string. Opcionális. Használja a diagnosticsEnabled = true. Engedélyezett értékek: onAbortOnly (csak megszakítással), always, never. Alapértelmezett érték: onAbortOnly.
Gyűjt egy mini memóriaképet, amely további elemzésekhez használható.
- onAbortOnly – a rendszer csak akkor gyűjt mini memóriaképet, ha a tesztfuttatás megszakad.
- Always – a rendszer mindig gyűjt egy mini memóriaképet, függetlenül attól, hogy a tesztfuttatás befejeződik-e.
- Soha – a rendszer nem gyűjt mini memóriaképet, függetlenül attól, hogy a tesztfuttatás befejeződik-e.
rerunFailedTests
-
sikertelen tesztek újrafuttatása
boolean. Alapértelmezett érték: False.
A sikertelen tesztek újrafuttatása mindaddig, amíg el nem érik a kísérletek maximális számát.
rerunType
-
Ne futtassa újra, ha a tesztelési hibák túllépik a megadott küszöbértéket
string. Opcionális. Használja a rerunFailedTests = true. Engedélyezett értékek: basedOnTestFailurePercentage (% hiba), basedOnTestFailureCount (a sikertelen tesztek száma). Alapértelmezett érték: basedOnTestFailurePercentage.
Elkerüli a tesztek újrafuttatását, ha a hibaarány átlépi a megadott küszöbértéket. Ez akkor alkalmazható, ha a környezeti problémák súlyos hibákhoz vezetnek. Küszöbértékként megadhatja a hibák százalékos arányát vagy a sikertelen tesztek számát.
rerunFailedThreshold
-
% hiba
string. Opcionális. Használja a rerunFailedTests = true && rerunType = basedOnTestFailurePercentage. Alapértelmezett érték: 30.
Elkerüli a tesztek újrafuttatását, ha a sikertelen tesztelési esetek százalékos aránya átlépi a megadott küszöbértéket. Ez akkor alkalmazható, ha a környezeti problémák súlyos hibákhoz vezetnek.
rerunFailedTestCasesMaxLimit
-
sikertelen tesztek száma
string. Opcionális. Használja a rerunFailedTests = true && rerunType = basedOnTestFailureCount. Alapértelmezett érték: 5.
Elkerüli a tesztek újrafuttatását, ha a sikertelen tesztelési esetek száma túllépi a megadott korlátot. Ez akkor alkalmazható, ha a környezeti problémák súlyos hibákhoz vezetnek.
rerunMaxAttempts
-
kísérletek maximális száma
string. Opcionális. Használja a rerunFailedTests = true. Alapértelmezett érték: 3.
Meghatározza, hogy a sikertelen teszteket legfeljebb hány alkalommal kell megismételni. Ha egy teszt a kísérletek maximális számának elérése előtt megy át, a rendszer nem futtatja újra.
Feladatvezérlési lehetőségek
Minden feladathoz tartoznak vezérlési lehetőségek is a feladat bemenetei mellett. További információ: Vezérlők és gyakori feladattulajdonságok.
Kimeneti változók
Nincs.
Megjegyzések
Ezzel a feladattal egység- és funkcionális teszteket (Selenium, Appium, Coded UI-teszt stb.) futtathat a Visual Studio Tesztfuttatóval. Az MSTest-alapú tesztek mellett a Visual Studio tesztadapterrel rendelkező tesztkörnyezetek is végrehajthatók, például xUnit, NUnit vagy Chutzpah.
Teszteli, hogy a cél .NET Core-keretrendszer végrehajtható-e a .runsettings fájl .runsettings fájl.
A tesztek több ügynökön is terjeszthetők a feladat 2. verziójával. További információ: Tesztek futtatása párhuzamosan a Visual Studio Teszt feladattal.
Előfeltételek ellenőrzése
Ha windowsos, saját üzemeltetésű ügynököt használ, ezt az előfeltételt telepíteni kell:
- .NET-keretrendszer 4.6.2-es vagy újabb verziója
Igények
Az ügynöknek a következő képességgel kell rendelkeznie:
VSTEST
A vstest-kereslet kétféleképpen lehet kielégíteni:
- A Visual Studio telepítve van az ügynökgépen.
- A Visual Studio Test Platform Installer feladatának használatával a folyamatdefinícióban.
Hogyan futtathatok olyan teszteket, amelyek a TestCaset adatforrásként használják?
A TestCaset adatforrásként használó automatizált tesztek futtatásához a következőkre van szükség:
- Az ügynökgépen a Visual Studio 2017.6-os vagy újabb verziójának kell lennie. A Visual Studio Test Platform Installer-feladat nem használható a TestCaset adatforrásként használó tesztek futtatására.
- Hozzon létre egy PAT, amely jogosult a "Munkaelemek (teljes)" hatókörre.
- Adjon hozzá egy
Test.TestCaseAccessTokennevű biztonságos build- vagy kiadásváltozót az előző lépésben létrehozott PAT értékével.
Problémákba ütközöm az adatvezérelt xUnit, NUnit és MSTest tesztek futtatásakor néhány feladatlehetőséggel. Vannak ismert korlátozások?
Az xUnit, NUnit és MSTest tesztkeretrendszereket használó adatvezérelt teszteknek van néhány ismert korlátozása, és nem használhatók a következő feladatbeállításokkal:
- Sikertelen tesztek újrafuttatása.
- Tesztek elosztása több ügynökön és kötegelési lehetőségeken.
- Hatáselemzés tesztelése.
A fenti korlátozások annak köszönhetők, hogy ezeknek a tesztelési keretrendszereknek az adapterei hogyan derítik fel és jelentik az adatvezérelt teszteket.
Támogatja a VSTest-feladat olyan tesztek futtatását, amelyek egyszerre több cél-keretrendszert céloznak meg?
Igen, a 17.3 VSTest verziótól kezdve támogatja az olyan tesztek futtatását, amelyek egyszerre több cél-keretrendszert céloznak meg.
Korábban ez nem volt lehetséges, mert a VSTest platform oldalának korlátozása miatt nem volt lehetséges.
Ha több cél-keretrendszerhez tartozó teszteket szeretne futtatni, telepítenie kell a VSTest kompatibilis verzióját Visual Studio Test Platform Installer használatával, és a vsTestVersiontoolsInstaller kell beállítania a használatához.
A teszt eredményének közzétételekor a következő hibaüzenet jelenik meg: Nem sikerült közzétenni a teszteredményeket: Érvénytelen prioritás van megadva?
Ez a hiba akkor fordul elő, ha bármelyik vizsgálati módszer prioritása 255 felett van, javítsa ki a tesztmetódus prioritását a kódban, és hajtsa végre újra a teszteket. A létrehozott TRX-fájl áttekintésével megtekintheti a 255-nél nagyobb prioritású teszteket.
Az AzurePipelinesCredential használata integrációs tesztekben
A .NET,C++, Go, Java, JavaScript és Python Azure Identity-kódtárak támogatják a számítási feladatok identitás-összevonási, így a AzureCLI@2 és AzurePowerShell@5 feladatokból végrehajtott kód hitelesíthető a Microsoft Entra-azonosítóval (például az Azure eléréséhez) a AzurePipelinesCredential osztály használatával.
Sok ügyfél Azure SDK-ügyfélkódtárakat használ más feladatokból meghívott integrációs tesztekben. A DotNetCoreCLI@2, Maven@4 és VSTest@3 feladatok a AzurePipelinesCredential osztály használatával férhetnek hozzá az Azure-erőforrásokhoz.
A connectedServiceName tulajdonságot a számítási feladatok identitásának összevonásával konfigurált Azure-szolgáltatáskapcsolatra állíthatja be. A AzurePipelinesCredentialSYSTEM_ACCESSTOKEN kell beállítani.
Az alábbi példa a connectedServiceName tevékenység DotNetCoreCLI@2 bemenetét mutatja be.
VSTest@3 és Maven@4 használata hasonló.
- task: DotNetCoreCLI@2
inputs:
command: 'run'
connectedServiceName: <Azure service connection configured with workload identity federation>
env:
SYSTEM_ACCESSTOKEN: $(System.AccessToken)
A AzurePipelinesCredentialtovábbi információ: Az Azure-szolgáltatáskapcsolatok biztonsági helyzetének javítása az AzurePipelinesCredential.
Követelmények
| Követelmény | Leírás |
|---|---|
| Folyamattípusok | YAML, klasszikus build, klasszikus kiadás |
| Futtatás bekapcsolva | Ügynök, DeploymentGroup |
| Igények | A saját üzemeltetésű ügynököknek olyan képességekkel kell rendelkezniük, amelyek megfelelnek az alábbi követelményeknek, a feladatot használó feladatok futtatásához: vstest |
| Képességek | Ez a tevékenység nem felel meg a feladat későbbi tevékenységeire vonatkozó követelményeknek. |
| parancskorlátozások | Bármely |
| Változók beállítása | Bármely |
| Ügynök verzió | 2.144.0 vagy újabb |
| Tevékenységkategória | Teszt |