Aracılığıyla paylaş


VSTest@2 - Visual Studio Test v2 görevi

Visual Studio Test (VSTest) çalıştırıcısını kullanarak birim ve işlevsel testleri (Selenium, Appium, Kodlanmış UI testi vb.) çalıştırmak için bu görevi kullanın. Visual Studio test bağdaştırıcısına sahip test çerçeveleri çalıştırabilirsiniz. Örnek çerçeveler MSTest, xUnit, NUnit, Chutzpah (QUnit, Mocha ve Jasmine kullanan JavaScript testleri için) vb. Testler bu görev kullanılarak birden çok aracıya dağıtılabilir.

Uyarı

VSTest@3 görevin en yeni sürümüdür ve işlem hatlarınızda kullanılmalıdır.

Uyarı

VSTest Azure görevi VSTest platformuna özgüdür. Daha yeni Microsoft.Testing.Platform (MTP) desteklemez.

Sözdizimi

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

Girişler

testSelector - kullanarak testleri seçme
string. Gerekli. İzin verilen değerler: testAssemblies (Test derlemeleri), testPlan (Test planı), testRun (Test çalıştırması). Varsayılan değer: testAssemblies.

  • Test derlemesi: Testlerinizi içeren bir veya daha fazla test derlemesini belirtir. İsteğe bağlı olarak, yalnızca belirli testleri seçmek için bir filtre ölçütü belirtebilirsiniz.
  • test planını : Test planınızdan testlerle ilişkilendirilmiş otomatik bir test yöntemi olan testleri çalıştırır. Testleri bir test çalışması iş öğesiyle ilişkilendirme hakkında daha fazla bilgi edinmek için bkz. Otomatikleştirilmiş testleri test çalışmalarıyla ilişkilendirme.
  • test çalıştırmasını :test planlarından testleri çalıştırmak için bir ortam ayarlarken bu seçeneği kullanın. Bu seçenek, testleri sürekli tümleştirme/sürekli dağıtım (CI/CD) işlem hattında çalıştırırken kullanılmamalıdır.

testAssemblyVer2 - Test dosyaları
string. testSelector = testAssembliesgerekir. Varsayılan değer: **\bin\**\*test.dll\n**\bin\**\*tests.dll.

Belirtilen dosyalardan testleri çalıştırır. Sıralı testler ve web testleri sırasıyla .orderedtest ve .webtest dosyaları belirtilerek çalıştırılabilir. .webtestçalıştırmak için Visual Studio 2017 Güncelleştirme 4 veya üzeri gereklidir. Dosya yolları arama klasörüne göredir. Bu giriş, birden çokminimatch desenini destekler.

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

testAssemblyVer2 - Test dosyaları
string. testSelector = testAssembliesgerekir. Varsayılan değer: **\*test*.dll\n!**\*TestAdapter.dll\n!**\obj\**.

Belirtilen dosyalardan testleri çalıştırır. Sıralı testler ve web testleri sırasıyla .orderedtest ve .webtest dosyaları belirtilerek çalıştırılabilir. .webtestçalıştırmak için Visual Studio 2017 Güncelleştirme 4 veya üzeri gereklidir. Dosya yolları arama klasörüne göredir. Bu giriş, birden çokminimatch desenini destekler.

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

testPlan - Test planı
string. testSelector = testPlangerekir.

Otomatikleştirilmiş test çalışmalarını içeren test paketlerini içeren bir test planı belirtir.


testSuite - Test paketi
string. testSelector = testPlangerekir.

Otomatik test çalışmalarını içeren bir veya daha fazla test paketi belirtir. Test çalışması iş öğeleri otomatik test yöntemiyle ilişkilendirilmelidir.


testConfiguration - Test yapılandırması
string. testSelector = testPlangerekir.

Test yapılandırmasını belirtir.


tcmTestRun - Test Çalıştırması
string. Opsiyonel. testSelector = testRunolduğunda kullanın. Varsayılan değer: $(test.RunId).

test planlarından otomatik test çalıştırmalarını tetiklerken kullanılan test çalıştırması tabanlı seçimi belirtir. Bu seçenek, CI/CD işlem hattında testleri çalıştırmak için kullanılamaz.


searchFolder - Arama klasörü
string. Gerekli. Varsayılan değer: $(System.DefaultWorkingDirectory).

Test derlemeleri için aranacak klasörü belirtir.


Test sonuçları klasörünüresultsFolder -
string. Varsayılan değer: $(Agent.TempDirectory)\TestResults.

Test sonuçlarını depolamak için klasörü belirtir. Varsayılan dizin kullanılırken, işlem hattı çalıştırmasının sonunda temizlenir. Sonuçlar dizini, testler çalıştırılmadan önce her zaman vstest görevinin başlangıcında temizlenir. Sağlanmışsa göreli klasör yolu, $(Agent.TempDirectory)göre değerlendirilir.


testFiltercriteria - Test filtresi ölçütleri
string. Opsiyonel. testSelector = testAssembliesolduğunda kullanın.

Test derlemelerinden testleri filtrelemek için ek ölçütler belirtir. Örneğin: Priority=1|Name=MyTestMethod. komut satırı seçenekleri hakkında bilgi edinin.


runOnlyImpactedTests - Yalnızca etkilenen testleri çalıştırma
boolean. Opsiyonel. testSelector = testAssembliesolduğunda kullanın. Varsayılan değer: False.

Kod değişikliğini doğrulamak için gereken testleri otomatik olarak belirtir ve çalıştırır. Test Etkisi Analizikullanma hakkında bilgi edinin.


runAllTestsAfterXBuilds - Tüm testlerin çalıştırılacağı derleme sayısı
string. Opsiyonel. testSelector = testAssemblies && runOnlyImpactedTests = trueolduğunda kullanın. Varsayılan değer: 50.

Tüm testler otomatik olarak çalıştırılmadan önce yürütülecek derleme sayısını belirtir. Test Etkisi Analizi, test çalışmaları ve kaynak kodu arasındaki eşlemeyi depolar. Tüm testleri düzenli olarak çalıştırarak eşlemeyi yeniden oluşturmak önerilir.


uiTests - Test karışımı ui testleri içerir
boolean. Varsayılan değer: false.

UI testlerini çalıştırmak için aracının Autologon etkin etkileşimli modda çalışacak şekilde ayarlandığından emin olun. Derleme/yayın kuyruğa almadan önce etkileşimli olarak çalışacak bir aracı ayarlama işlemi yapılmalıdır. Bu kutu işaretlenmesi aracıyı otomatik olarak etkileşimli modda yapılandırmaz. Bu seçenek, hataları önlemek için aracıyı uygun şekilde yapılandırmaya yönelik bir anımsatıcı görevi görür. UI testlerini çalıştırmak için VS 2015 ve 2017 havuzlarından barındırılan Windows aracıları kullanılabilir.


vstestLocationMethod - kullanarak test platformu seçme
string. İzin verilen değerler: version, location (Belirli konum). Varsayılan değer: version.

Hangi test platformlarının kullanılacağını belirtir.


vsTestVersion - Test platformu sürümü
string. Opsiyonel. vstestLocationMethod = versionolduğunda kullanın. İzin verilen değerler: latest, 17.0 (Visual Studio 2022), 16.0 (Visual Studio 2019), 15.0 (Visual Studio 2017), 14.0 (Visual Studio 2015), toolsInstaller (Araçlar Yükleyicisi tarafından yüklenir). Varsayılan değer: latest.

Kullanılacak Visual Studio Test sürümünü belirtir. En son belirtilirse, bu giriş yüklenen en son sürümü (izin verilen değerler listesinden) seçer. Aracıda Visual Studio'ya gerek kalmadan testleri çalıştırmak için Araçlar tarafından yüklenen yükleyici seçeneğini kullanın. Test platformunu NuGet'ten almak için Visual Studio Test Platformu Yükleyicisi görevini eklediğinizden emin olun.


vsTestVersion - Test platformu sürümü
string. Opsiyonel. vstestLocationMethod = versionolduğunda kullanın. İzin verilen değerler: latest, 16.0 (Visual Studio 2019), 15.0 (Visual Studio 2017), 14.0 (Visual Studio 2015), toolsInstaller (Araçlar Yükleyicisi tarafından yüklenir). Varsayılan değer: latest.

Kullanılacak Visual Studio Test sürümünü belirtir. En son belirtilirse, bu giriş yüklenen en son sürümü (izin verilen değerler listesinden) seçer. Aracıda Visual Studio'ya gerek kalmadan testleri çalıştırmak için Araçlar tarafından yüklenen yükleyici seçeneğini kullanın. Test platformunu NuGet'ten almak için Visual Studio Test Platformu Yükleyicisi görevini eklediğinizden emin olun.


vstest.console.exeyolunu vstestLocation -
string. Opsiyonel. vstestLocationMethod = locationolduğunda kullanın.

VSTest yolunu belirtir.


runSettingsFile - Ayarları dosyası
string.

Testlerle kullanılacak bir runsettings veya testsettings dosyasının yolunu belirtir. Visual Studio 15.7 ve üzeri için tüm test türleri için runsettings kullanın. .testsettings dosyasını .runsettings dosyaya dönüştürmehakkında daha fazla bilgi edinin.


overrideTestrunParameters - Test çalıştırması parametrelerini geçersiz kılma
string.

TestRunParameters dosyasının runsettings bölümünde veya Properties dosyasının testsettings bölümünde tanımlanan parametreleri geçersiz kılar. Örneğin: -key1 value1 -key2 value2. testsettings Özelliklerine Visual Studio 2017 (güncelleştirme 4 veya üzeri) kullanılarak TestContext üzerinden erişilebilir.


pathtoCustomTestAdapters - Özel test bağdaştırıcılarının yolu
string.

Özel test bağdaştırıcılarının dizin yolunu belirtir. Test derlemeleriyle aynı klasörde bulunan bağdaştırıcılar otomatik olarak bulunur.


runInParallel - Çok çekirdekli makinelerde testleri paralel olarak çalıştırma
boolean. Varsayılan değer: False.

trueolarak ayarlanırsa testler paralel olarak çalıştırılır ve makinenin kullanılabilir çekirdeklerinden yararlanılır. Bu, MaxCpuCount dosyanızda belirtilirse runsettings geçersiz kılar. testlerinin paralelnasıl çalıştırılır hakkında daha fazla bilgi edinin.


runTestsInIsolation - Testleri yalıtım çalıştırma
boolean. Varsayılan değer: False.

Testleri yalıtılmış bir işlemde çalıştırır. Bu büyük olasılıkla vstest.console.exe test işleminde daha az hataya yol açar, ancak testler daha yavaş çalışabilir. Bu seçenek şu anda çok aracılı iş ayarıyla çalıştırılırken kullanılamaz.


codeCoverageEnabled - Kod kapsamı etkin
boolean. Varsayılan değer: False.

Test çalıştırmasından kod kapsamı bilgilerini toplar.


otherConsoleOptions - Diğer konsol seçenekleri
string.

vstest.console.exegeçirilebilen diğer konsol seçenekleri.

Bu seçenekler desteklenmez ve aracı işinin çok aracılı paralel ayarı kullanılarak testler çalıştırılırken, Test planı veya test çalıştırma seçeneğini veya özel bir toplu iş seçeneği belirlendiğinde yoksayılır. Seçenekler bunun yerine bir ayarlar dosyası kullanılarak belirtilebilir.


batch testleridistributionBatchType -
string. İzin verilen değerler: basedOnTestCases (test ve aracı sayısına göre), basedOnExecutionTime (Testlerin geçmiş çalışma süresine göre), basedOnAssembly (Test derlemelerine göre). Varsayılan değer: basedOnTestCases.

Toplu iş, bir test grubudur. Bir grup test, testlerini aynı anda çalıştırır ve toplu iş için sonuçlar yayımlanır. Görevin çalıştırıldığı iş birden çok aracı kullanacak şekilde ayarlanırsa, her aracı paralel olarak çalıştırılacak tüm kullanılabilir test toplu işlemlerini alır. Toplu iş çalıştırılabilir:

test ve aracı sayısına göre. Test çalıştırmasına katılan test ve aracı sayısına göre basit toplu işlem.

testlerin geçmiş çalışma süresine göre. Bu toplu işlem, her toplu iş yaklaşık olarak eşit çalışma süresine sahip olan toplu testler oluşturmak için geçmiş çalışma süresini dikkate alır.

test derlemelerini temel alır. Bir derlemeden gelen testler birlikte toplu olarak oluşturulur.


Batch seçeneklerinibatchingBasedOnAgentsOption -
string. Opsiyonel. distributionBatchType = basedOnTestCasesolduğunda kullanın. İzin verilen değerler: autoBatchSize (Toplu iş boyutunu otomatik olarak belirleyin), customBatchSize (Toplu iş boyutunu belirtin). Varsayılan değer: autoBatchSize.

Test çalıştırmasına katılan test ve aracı sayısına göre basit toplu işlemi belirtir. Toplu iş boyutu otomatik olarak belirlendiğinde, her toplu işlem (total number of tests / number of agents) testleri içerir. Bir toplu iş boyutu belirtilirse, her toplu işlem belirtilen sayıda test içerir.


customBatchSizeValue - Toplu iş başına test sayısı
string. distributionBatchType = basedOnTestCases && batchingBasedOnAgentsOption = customBatchSizegerekir. Varsayılan değer: 10.

Toplu iş boyutunu belirtir.


Batch seçeneklerinibatchingBasedOnExecutionTimeOption -
string. Opsiyonel. distributionBatchType = basedOnExecutionTimeolduğunda kullanın. İzin verilen değerler: autoBatchSize (Toplu iş zamanını otomatik olarak belirleyin), customTimeBatchSize (Toplu iş başına çalışma süresini belirtin). Varsayılan değer: autoBatchSize.

Bu toplu işlem, her toplu iş yaklaşık olarak eşit çalışma süresine sahip olan toplu testler oluşturmak için geçmiş çalışma sürelerini dikkate alır. Hızlı çalışan testler birlikte toplu işlenirken, uzun süre çalışan testler ayrı bir toplu işe ait olabilir. Bu seçenek çok aracılı iş ayarıyla kullanıldığında, toplam test süresi en aza indirilir.


Toplu işbaşına çalışma süresi (sn) customRunTimePerBatchValue -
string. distributionBatchType = basedOnExecutionTime && batchingBasedOnExecutionTimeOption = customTimeBatchSizegerekir. Varsayılan değer: 60.

Toplu iş başına çalışma süresini (saniye cinsinden) belirtir.


dontDistribute - İş birden çok aracı kullanıldığında dağıtmak yerine testleri çoğaltma
boolean. Varsayılan değer: False.

Bu seçeneğin seçilmesi, görev çok aracılı bir işte çalışırken testleri aracılar arasında dağıtmaz. Seçilen testlerin her biri her aracıda yinelenir. Aracı işi paralellik olmadan veya çoklu yapılandırma seçeneğiyle çalışacak şekilde yapılandırıldığında bu seçenek geçerli değildir.


çalıştırma başlığını test
string.

Test çalıştırması için bir ad belirtir.


platform - Platform oluşturma
string.

Testlerin raporlanması gereken derleme platformunu belirtir. Derleme görevinizde platform için bir değişken tanımladıysanız, bunu bu girişle kullanın.


configuration - Yapılandırma
string.

Testlerin raporlanması gereken derleme yapılandırmasını belirtir. Derleme görevinizde yapılandırma için bir değişken tanımladıysanız, bunu bu girişle kullanın.


publishRunAttachments - Test eklerini karşıya yükleme
boolean. Varsayılan değer: true.

Çalıştırma düzeyi eklerini yayımlamayı kabul eder veya devre dışı bırakabilirsiniz.


failOnMinTestsNotRun - En az sayıda test çalıştırılmazsa görevi başarısız yapın.
boolean. Varsayılan değer: False.

En az sayıda test çalıştırılmazsa görev başarısız olur. Görev girişlerinde veya temel test bağdaştırıcısı bağımlılıklarında yapılan değişiklikler istenen testlerin yalnızca bir alt kümesine yol açıyorsa bu yararlı olabilir.


minimumExpectedTests - Minimum test sayısı
string. Opsiyonel. failOnMinTestsNotRun = trueolduğunda kullanın. Varsayılan değer: 1.

Görevin başarılı olması için çalıştırılacak en az test sayısını belirtir. Yürütülen toplam test sayısı, geçirilen, başarısız olan ve durdurulan testlerin toplamı olarak hesaplanır.


diagnosticsEnabled - Olağanüstü hatalar durumunda gelişmiş tanılamaları toplayın
boolean. Varsayılan değer: false.

Test kilitlenmesi gibi yıkıcı hataları gidermek için tanılama verilerini toplar. Bu seçenek işaretlendiğinde, bir sıralı XML dosyası oluşturulur ve test çalıştırmasına eklenir. Sıra dosyası, testlerin çalıştırıldığı sıra hakkında bilgi içerir, bu nedenle olası bir suçlu testi tanımlanabilir.


collectDumpOn - İşlem dökümünü toplama ve test çalıştırması raporuna ekleme
string. Opsiyonel. diagnosticsEnabled = trueolduğunda kullanın. İzin verilen değerler: onAbortOnly (Yalnızca durdurmada), alwaysnever. Varsayılan değer: onAbortOnly.

Daha fazla analiz için kullanılabilecek bir mini döküm toplar.

  • onAbortOnly - mini döküm yalnızca test çalıştırması durdurulduğunda toplanır.
  • Her zaman - Test çalıştırmasının tamamlanıp tamamlanmadığına bakılmaksızın her zaman bir mini döküm toplanır.
  • Asla - Test çalıştırmasının tamamlanıp tamamlanmadığına bakılmaksızın mini döküm toplanmaz.

rerunFailedTests - Başarısız testleri yeniden çalıştırma
boolean. Varsayılan değer: False.

Başarısız testleri geçene kadar veya deneme sayısı üst sınırına ulaşılana kadar yeniden çalıştırır.


rerunType - Test hataları belirtilen eşiği aşarsa yeniden çalıştırmayın
string. Opsiyonel. rerunFailedTests = trueolduğunda kullanın. İzin verilen değerler: basedOnTestFailurePercentage (% hatası), basedOnTestFailureCount (başarısız test sayısı). Varsayılan değer: basedOnTestFailurePercentage.

Hata oranı belirtilen eşiği aştığında testlerin yeniden çalıştırılmasını önler. Ortam sorunları büyük hatalara yol açıyorsa bu geçerlidir. Hata yüzdesini veya başarısız test sayısını eşik olarak belirtebilirsiniz.


rerunFailedThreshold - % hatası
string. Opsiyonel. rerunFailedTests = true && rerunType = basedOnTestFailurePercentageolduğunda kullanın. Varsayılan değer: 30.

Başarısız test çalışmalarının yüzdesi belirtilen eşiği aştığında testlerin yeniden çalıştırılmasını önler. Ortam sorunları büyük hatalara yol açıyorsa bu geçerlidir.


başarısız testlerin rerunFailedTestCasesMaxLimit - numarası
string. Opsiyonel. rerunFailedTests = true && rerunType = basedOnTestFailureCountolduğunda kullanın. Varsayılan değer: 5.

Başarısız test çalışmalarının sayısı belirtilen sınırı aştığında testlerin yeniden çalıştırılmasını önler. Ortam sorunları büyük hatalara yol açıyorsa bu geçerlidir.


rerunMaxAttempts - Deneme sayısı üst sınırı
string. Opsiyonel. rerunFailedTests = trueolduğunda kullanın. Varsayılan değer: 3.

Başarısız bir testin en fazla kaç kez yeniden denenmesi gerektiğini belirtir. Bir test, deneme sayısı üst sınırına ulaşılmadan önce geçerse yeniden çalıştırılmaz.


Görev denetimi seçenekleri

Tüm görevlerin, görev girişlerine ek olarak denetim seçenekleri vardır. Daha fazla bilgi için bkz. Denetim seçenekleri ve ortak görev özellikleri.

Çıkış değişkenleri

Yok.

Açıklamalar

Visual Studio Test çalıştırıcısını kullanarak birim ve işlevsel testleri (Selenium, Appium, Kodlanmış UI testi ve daha fazlası) çalıştırmak için bu görevi kullanın. MSTest tabanlı testlerle birlikte, Visual Studio test bağdaştırıcısına sahip test çerçeveleri de yürütülebilir, örneğin xUnit, NUnit veya Chutzpah.

hedef .NET Core framework'ün .runsettings dosyasında uygun hedef çerçeve değeri belirtilerek yürütülebildiğini test.

Testler, bu görevin 2. sürümü kullanılarak birden çok aracıya dağıtılabilir. Daha fazla bilgi için bkz. Visual Studio Test görevini kullanarak testleri paralel çalıştırma.

Önkoşulları denetleme

Windows şirket içinde barındırılan aracı kullanıyorsanız bu önkoşul yüklenmelidir:

Talep

Aracı aşağıdaki özelliğe sahip olmalıdır:

vstest

Vstest talebi iki şekilde karşılanabilir:

  1. Visual Studio aracı makinesine yüklenir.
  2. İşlem hattı tanımında Visual Studio Test Platformu Yükleyicisi görevini kullanarak.

Veri kaynağı olarak TestCase kullanan testleri nasıl çalıştırabilirim?

TestCase'i veri kaynağı olarak kullanan otomatikleştirilmiş testleri çalıştırmak için aşağıdakiler gereklidir:

  1. Aracı makinesinde Visual Studio 2017.6 veya üzeri olmalıdır. Visual Studio Test Platformu Yükleyicisi görevi, veri kaynağı olarak TestCase kullanan testleri çalıştırmak için kullanılamaz.
  2. "İş Öğeleri (tam)" kapsamı için yetkilendirilmiş bir PAT oluşturun.
  3. Değeri önceki adımda oluşturulan PAT değerine ayarlanmış Test.TestCaseAccessToken adlı güvenli bir derleme veya yayın değişkeni ekleyin.

Bazı görev seçenekleriyle veri temelli xUnit ve NUnit testleri çalıştırırken sorunlarla karşılaşıyorum. Bilinen sınırlamalar var mı?

xUnit ve NUnit test çerçevelerini kullanan veri temelli testlerin bilinen bazı sınırlamaları vardır ve aşağıdaki görev seçenekleriyle kullanılamaz:

  1. Başarısız testleri yeniden çalıştırın.
  2. Testleri birden çok aracıya dağıtma ve toplu işlem seçenekleri.
  3. Test Etkisi Analizi.

Yukarıdaki sınırlamaların nedeni, bu test çerçeveleri için bağdaştırıcıların veri temelli testleri bulma ve raporlama şeklidir.

VSTest görevi aynı anda birden çok hedef çerçeveyi hedefleyen testleri çalıştırmayı destekliyor mu?

Evet, sürüm 17.3 VSTest'ten başlayarak, aynı anda birden çok hedef çerçeveyi hedefleyen testlerin çalıştırılmasını destekler. Bundan önce, VSTest platformu tarafındaki bir sınırlama nedeniyle bu mümkün değildi.

Birden çok hedef çerçeveye ait testleri çalıştırmak istiyorsanız, Visual Studio Test Platformu Yükleyicisi aracılığıyla uyumlu bir VSTest sürümü yüklemeniz ve kullanmak için vsTestVersiontoolsInstaller olarak ayarlamanız gerekir.

Test sonucu yayımlanırken şu hata alınıyor: Test sonuçları yayımlanamadı: Geçersiz Öncelik belirtildi mi?

Bu hata, test yöntemlerinden herhangi birinin önceliği 255'in üzerinde ayarlanmışsa oluşur, koddaki test yöntemi önceliğini düzeltir ve testleri yeniden yürütür. 255'ten büyük önceliğe sahip tüm testleri görmek için oluşturulan trx dosyasını gözden geçirebilirsiniz.

Gereksinimler

Gereksinim Açıklama
İşlem hattı türleri YAML, Klasik derleme, Klasik sürüm
Üzerinde çalışır Agent, DeploymentGroup
Talepleri Şirket içinde barındırılan aracıların, bu görevi kullanan işleri çalıştırmak için taleplerine uyan özellikleri olmalıdır: vstest
Özellikleri Bu görev, işteki sonraki görevler için herhangi bir talebi karşılamaz.
Komut kısıtlamaları Herhangi bir
Ayarlanabilir değişkenleri Herhangi bir
Aracı sürümü 2.103.0 veya üzeri
Görev kategorisi Sınav