VSTest@2 - مهمة Visual Studio Test v2
استخدم هذه المهمة لتشغيل الوحدة والاختبارات الوظيفية (Selenium وAppium واختبار واجهة المستخدم المشفرة وما إلى ذلك) باستخدام مشغل Visual Studio Test (VSTest). يمكنك تشغيل أطر عمل الاختبار التي تحتوي على محول اختبار Visual Studio. أمثلة أطر العمل هي MSTest وxUnit وNUnit وChutzpah (لاختبارات JavaScript باستخدام QUnit وMocha وJasmine)، وما إلى ذلك. يمكن توزيع الاختبارات على عوامل متعددة باستخدام هذه المهمة.
ملاحظة
VSTest@2 هو أحدث إصدار من المهمة ويجب استخدامه في البنية الأساسية لبرنامج ربط العمليات التجارية الخاصة بك.
بناء الجملة
# 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.
الإدخالات
testSelector
- تحديد الاختبارات باستخدام
string
. مطلوب القيم المسموح بها: testAssemblies
(تجميعات الاختبار)، testPlan
(خطة الاختبار)، testRun
(تشغيل الاختبار). القيمة الافتراضية: testAssemblies
.
- اختبار التجميع: تحديد تجميع اختبار واحد أو أكثر يحتوي على اختباراتك. يمكنك اختياريا تحديد معايير تصفية لتحديد اختبارات محددة فقط.
- خطة الاختبار: تشغيل الاختبارات من خطة الاختبار الخاصة بك التي تحتوي على أسلوب اختبار تلقائي مقترن بها. لمعرفة المزيد حول كيفية إقران الاختبارات بعنصر عمل حالة الاختبار، راجع إقران الاختبارات التلقائية بحالات الاختبار.
- تشغيل الاختبار: استخدم هذا الخيار عند إعداد بيئة لتشغيل الاختبارات من خطط الاختبار. يجب عدم استخدام هذا الخيار عند تشغيل الاختبارات في البنية الأساسية لبرنامج ربط العمليات التجارية للتكامل المستمر/التوزيع المستمر (CI/CD).
testAssemblyVer2
- اختبار الملفات
string
. مطلوب عند testSelector = testAssemblies
. القيمة الافتراضية: **\bin\**\*test.dll\n**\bin\**\*tests.dll
.
تشغيل الاختبارات من الملفات المحددة. يمكن تشغيل الاختبارات وwebtests مرتبة عن طريق تحديد الملفات .orderedtest
و .webtest
على التوالي. لتشغيل ، يلزم تحديث .webtest
Visual Studio 2017 4 أو أعلى. ترتبط مسارات الملفات إلى مجلد البحث. يدعم هذا الإدخال أسطرا متعددة من أنماط المطابقة المصغرة.
# Example
- task: VSTest@2
inputs:
testSelector: 'testAssemblies'
testAssemblyVer2: |
**\*test*.dll
!**\*TestAdapter.dll
!**\obj\**
testAssemblyVer2
- اختبار الملفات
string
. مطلوب عند testSelector = testAssemblies
. القيمة الافتراضية: **\*test*.dll\n!**\*TestAdapter.dll\n!**\obj\**
.
تشغيل الاختبارات من الملفات المحددة. يمكن تشغيل الاختبارات وwebtests مرتبة عن طريق تحديد الملفات .orderedtest
و .webtest
على التوالي. لتشغيل ، يلزم تحديث .webtest
Visual Studio 2017 4 أو أعلى. ترتبط مسارات الملفات إلى مجلد البحث. يدعم هذا الإدخال أسطرا متعددة من أنماط المطابقة المصغرة.
# Example
- task: VSTest@2
inputs:
testSelector: 'testAssemblies'
testAssemblyVer2: |
**\*test*.dll
!**\*TestAdapter.dll
!**\obj\**
testPlan
- خطة الاختبار
string
. مطلوب عند testSelector = testPlan
.
يحدد خطة اختبار تحتوي على مجموعات اختبار مع حالات اختبار تلقائية.
testSuite
- مجموعة الاختبار
string
. مطلوب عند testSelector = testPlan
.
يحدد مجموعة اختبار واحدة أو أكثر تحتوي على حالات اختبار تلقائية. يجب أن تكون عناصر عمل حالة الاختبار مقترنة بطريقة اختبار تلقائية.
testConfiguration
- تكوين الاختبار
string
. مطلوب عند testSelector = testPlan
.
يحدد تكوين الاختبار.
tcmTestRun
- اختبار التشغيل
string
. اختياري. استخدم عندما testSelector = testRun
. القيمة الافتراضية: $(test.RunId)
.
يحدد التحديد المستند إلى تشغيل الاختبار المستخدم عند تشغيل عمليات تشغيل الاختبار التلقائية من خطط الاختبار. لا يمكن استخدام هذا الخيار لتشغيل الاختبارات في البنية الأساسية لبرنامج ربط العمليات التجارية CI/CD.
searchFolder
- مجلد البحث
string
. مطلوب القيمة الافتراضية: $(System.DefaultWorkingDirectory)
.
يحدد المجلد للبحث عن تجميعات الاختبار.
resultsFolder
- مجلد نتائج الاختبار
string
. القيمة الافتراضية: $(Agent.TempDirectory)\TestResults
.
يحدد المجلد لتخزين نتائج الاختبار. عند استخدام الدليل الافتراضي، يتم تنظيفه في نهاية تشغيل البنية الأساسية لبرنامج ربط العمليات التجارية. سيتم دائما تنظيف دليل النتائج في بداية vstest
المهمة قبل تشغيل الاختبارات. إذا تم توفير مسار المجلد النسبي، فسيتم اعتباره نسبة إلى $(Agent.TempDirectory)
.
testFiltercriteria
- اختبار معايير التصفية
string
. اختياري. استخدم عندما testSelector = testAssemblies
.
يحدد معايير إضافية لتصفية الاختبارات من تجميعات الاختبار. على سبيل المثال: Priority=1|Name=MyTestMethod
. تعرف على خيارات سطر الأوامر.
runOnlyImpactedTests
- تشغيل الاختبارات المتأثرة فقط
boolean
. اختياري. استخدم عندما testSelector = testAssemblies
. القيمة الافتراضية: False
.
يحدد ويشغل الاختبارات اللازمة للتحقق من صحة تغيير التعليمات البرمجية تلقائيا. تعرف على كيفية استخدام Test Impact Analysis.
runAllTestsAfterXBuilds
- عدد البنيات التي يجب بعد ذلك تشغيل جميع الاختبارات
string
. اختياري. استخدم عندما testSelector = testAssemblies && runOnlyImpactedTests = true
. القيمة الافتراضية: 50
.
يحدد عدد البنيات التي سيتم تنفيذها قبل تشغيل جميع الاختبارات تلقائيا. يخزن Test Impact Analysis التعيين بين حالات الاختبار ورمز المصدر. يوصى بإعادة إنشاء التعيين عن طريق تشغيل جميع الاختبارات على أساس منتظم.
uiTests
- يحتوي مزيج الاختبار على اختبارات واجهة المستخدم
boolean
. القيمة الافتراضية: false
.
لتشغيل اختبارات واجهة المستخدم، تأكد من تعيين العامل للتشغيل في الوضع التفاعلي مع تمكين Autologon . يجب إعداد عامل للتشغيل بشكل تفاعلي قبل وضع الإصدار/الإصدار في قائمة الانتظار. لا يؤدي تحديد هذا المربع إلى تكوين العامل في الوضع التفاعلي تلقائيا. يعمل هذا الخيار بمثابة تذكير لتكوين العامل بشكل مناسب لتجنب حالات الفشل. يمكن استخدام عوامل Windows المستضافة من تجمعات VS 2015 و2017 لتشغيل اختبارات واجهة المستخدم.
vstestLocationMethod
- تحديد النظام الأساسي للاختبار باستخدام
string
. القيم المسموح بها: version
، location
(موقع محدد). القيمة الافتراضية: version
.
يحدد النظام الأساسي للاختبار الذي يجب استخدامه.
vsTestVersion
- اختبار إصدار النظام الأساسي
string
. اختياري. استخدم عندما vstestLocationMethod = version
. القيم المسموح بها: latest
، 17.0
(Visual Studio 2022)، 16.0
(Visual Studio 2019)، 15.0
(Visual Studio 2017)، 14.0
(Visual Studio 2015)، toolsInstaller
(مثبت بواسطة أدوات المثبت). القيمة الافتراضية: latest
.
يحدد إصدار Visual Studio Test لاستخدامه. إذا تم تحديد الأحدث ، يختار هذا الإدخال أحدث إصدار (من قائمة القيم المسموح بها) المثبت. لتشغيل الاختبارات دون الحاجة إلى Visual Studio على العامل، استخدم خيار مثبت Install by tools . تأكد من تضمين مهمة Visual Studio Test Platform Installer للحصول على النظام الأساسي للاختبار من NuGet.
vsTestVersion
- اختبار إصدار النظام الأساسي
string
. اختياري. استخدم عندما vstestLocationMethod = version
. القيم المسموح بها: latest
، 16.0
(Visual Studio 2019)، 15.0
(Visual Studio 2017)، 14.0
(Visual Studio 2015)، toolsInstaller
(مثبت بواسطة أدوات المثبت). القيمة الافتراضية: latest
.
يحدد إصدار Visual Studio Test لاستخدامه. إذا تم تحديد الأحدث ، يختار هذا الإدخال أحدث إصدار (من قائمة القيم المسموح بها) المثبت. لتشغيل الاختبارات دون الحاجة إلى Visual Studio على العامل، استخدم خيار مثبت Install by tools . تأكد من تضمين مهمة Visual Studio Test Platform Installer للحصول على النظام الأساسي للاختبار من NuGet.
vstestLocation
- المسار إلى vstest.console.exe
string
. اختياري. استخدم عندما vstestLocationMethod = location
.
يحدد المسار إلى VSTest.
runSettingsFile
- ملف الإعدادات
string
.
يحدد المسار إلى ملف runsettings
أو testsettings
لاستخدامه مع الاختبارات. بالنسبة إلى Visual Studio 15.7 والإرتفاع، استخدم runsettings
لجميع أنواع الاختبارات. تعرف على المزيد حول تحويل .testsettings
ملف إلى .runsettings
ملف.
overrideTestrunParameters
- تجاوز معلمات تشغيل الاختبار
string
.
يتجاوز المعلمات المحددة في TestRunParameters
قسم runsettings
من ملف أو Properties
مقطع من testsettings
ملف. على سبيل المثال: -key1 value1 -key2 value2
. ملاحظه: يمكن الوصول إلى الخصائص المحددة في testsettings
ملف عبر TestContext
استخدام Visual Studio 2017 (التحديث 4 أو أعلى).
pathtoCustomTestAdapters
- المسار إلى محولات الاختبار المخصصة
string
.
يحدد مسار الدليل إلى محولات الاختبار المخصصة. يتم اكتشاف المحولات الموجودة في نفس المجلد مثل تجميعات الاختبار تلقائيا.
runInParallel
- إجراء الاختبارات بالتوازي على الأجهزة متعددة النواة
boolean
. القيمة الافتراضية: False
.
إذا تم تعيينها إلى true
، يتم تشغيل الاختبارات بالتوازي والاستفادة من الذاكرات الأساسية المتوفرة للجهاز. سيؤدي ذلك إلى MaxCpuCount
تجاوز إذا تم تحديده في الملف الخاص بك runsettings
. تعرف على المزيد حول كيفية تشغيل الاختبارات بالتوازي.
runTestsInIsolation
- تشغيل الاختبارات بمعزل عن غيرها
boolean
. القيمة الافتراضية: False
.
تشغيل الاختبارات في عملية معزولة. من المحتمل أن يؤدي هذا إلى أخطاء أقل في عملية اختبار vstest.console.exe، ولكن قد تعمل الاختبارات بشكل أبطأ. لا يمكن استخدام هذا الخيار حاليا عند التشغيل مع إعداد الوظيفة متعددة العوامل.
codeCoverageEnabled
- تمكين تغطية التعليمات البرمجية
boolean
. القيمة الافتراضية: False
.
يجمع معلومات تغطية التعليمات البرمجية من تشغيل الاختبار.
otherConsoleOptions
- خيارات وحدة التحكم الأخرى
string
.
خيارات وحدة التحكم الأخرى التي يمكن تمريرها إلى vstest.console.exe.
هذه الخيارات غير مدعومة وسيتم تجاهلها عند تشغيل الاختبارات باستخدام الإعداد المتوازي متعدد العوامل لوظيفة عامل، أو عند تشغيل الاختبارات باستخدام خطة الاختبار أو خيار تشغيل الاختبار ، أو عند تحديد خيار دفع مخصص. يمكن تحديد الخيارات باستخدام ملف إعدادات بدلا من ذلك.
distributionBatchType
- اختبارات الدفعات
string
. القيم المسموح بها: basedOnTestCases
(استنادا إلى عدد الاختبارات والعوامل)، basedOnExecutionTime
(استنادا إلى وقت التشغيل السابق للاختبارات)، basedOnAssembly
(استنادا إلى تجميعات الاختبار). القيمة الافتراضية: basedOnTestCases
.
الدفعة هي مجموعة من الاختبارات. تقوم دفعة من الاختبارات بتشغيل اختباراتها في نفس الوقت، ويتم نشر النتائج للدفعة. إذا تم تعيين المهمة التي يتم تشغيل المهمة فيها لاستخدام عوامل متعددة، يلتقط كل عامل أي دفعات متاحة من الاختبارات لتشغيلها بالتوازي. يمكن تشغيل دفعة:
بناء على عدد الاختبارات والوكلاء. تجميع بسيط بناء على عدد الاختبارات والوكلاء المشاركين في تشغيل الاختبار.
استنادا إلى وقت تشغيل الاختبارات الماضي. تأخذ هذه الدفعة في الاعتبار وقت التشغيل السابق لإنشاء دفعات من الاختبارات حيث يكون لكل دفعة وقت تشغيل متساو تقريبا.
استنادا إلى تجميعات الاختبار. يتم تجميع الاختبارات من التجميع معا.
batchingBasedOnAgentsOption
- خيارات الدفعة
string
. اختياري. استخدم عندما distributionBatchType = basedOnTestCases
. القيم المسموح بها: autoBatchSize
(تحديد حجم الدفعة تلقائيا)، customBatchSize
(تحديد حجم دفعة). القيمة الافتراضية: autoBatchSize
.
يحدد الدفعات البسيطة استنادا إلى عدد الاختبارات والوكلاء المشاركين في تشغيل الاختبار. عند تحديد حجم الدفعة تلقائيا، تحتوي كل دفعة على (total number of tests / number of agents)
اختبارات. إذا تم تحديد حجم دفعة، فستحتوي كل دفعة على العدد المحدد من الاختبارات.
customBatchSizeValue
- عدد الاختبارات لكل دفعة
string
. مطلوب عند distributionBatchType = basedOnTestCases && batchingBasedOnAgentsOption = customBatchSize
. القيمة الافتراضية: 10
.
يحدد حجم الدفعة.
batchingBasedOnExecutionTimeOption
- خيارات الدفعة
string
. اختياري. استخدم عندما distributionBatchType = basedOnExecutionTime
. القيم المسموح بها: autoBatchSize
(تحديد وقت الدفعة تلقائيا)، customTimeBatchSize
(تحديد وقت التشغيل لكل دفعة). القيمة الافتراضية: autoBatchSize
.
تأخذ هذه الدفعة في الاعتبار أوقات التشغيل السابقة لإنشاء دفعات من الاختبارات حيث يكون لكل دفعة وقت تشغيل متساو تقريبا. سيتم تجميع اختبارات التشغيل السريع معا، بينما قد تنتمي الاختبارات الأطول تشغيلا إلى دفعة منفصلة. عند استخدام هذا الخيار مع إعداد الوظيفة متعددة العوامل، يتم تقليل إجمالي وقت الاختبار إلى الحد الأدنى.
customRunTimePerBatchValue
- وقت التشغيل (ثانية) لكل دفعة
string
. مطلوب عند distributionBatchType = basedOnExecutionTime && batchingBasedOnExecutionTimeOption = customTimeBatchSize
. القيمة الافتراضية: 60
.
يحدد وقت التشغيل (بالثوان) لكل دفعة.
dontDistribute
- نسخ الاختبارات نسخا متماثلا بدلا من التوزيع عند استخدام عوامل متعددة في الوظيفة
boolean
. القيمة الافتراضية: False
.
لن يؤدي اختيار هذا الخيار إلى توزيع الاختبارات عبر الوكلاء عند تشغيل المهمة في وظيفة متعددة العوامل. سيتم تكرار كل اختبار (اختبارات) محددة على كل عامل. لا ينطبق هذا الخيار عند تكوين مهمة العامل للتشغيل دون توازي أو مع خيار التكوين المتعدد.
dontDistribute
- لا توزع الاختبارات وتنسخها نسخا متماثلا بدلا من ذلك عند استخدام عوامل متعددة في الوظيفة
boolean
. القيمة الافتراضية: False
.
لن يؤدي اختيار هذا الخيار إلى توزيع الاختبارات عبر الوكلاء عند تشغيل المهمة في وظيفة متعددة العوامل. سيتم تكرار كل اختبار (اختبارات) محددة على كل عامل. لا ينطبق هذا الخيار عند تكوين مهمة العامل للتشغيل دون توازي أو مع خيار التكوين المتعدد.
testRunTitle
- عنوان تشغيل الاختبار
string
.
يحدد اسما لتشغيل الاختبار.
platform
- بناء النظام الأساسي
string
.
يحدد النظام الأساسي للبناء الذي يجب الإبلاغ عن الاختبارات عليه. إذا قمت بتعريف متغير للنظام الأساسي في مهمة الإنشاء الخاصة بك، فاستخدم ذلك مع هذا الإدخال.
configuration
- تكوين الإنشاء
string
.
يحدد تكوين البناء الذي يجب الإبلاغ عن الاختبارات عليه. إذا قمت بتعريف متغير للتكوين في مهمة الإنشاء الخاصة بك، فاستخدم ذلك مع هذا الإدخال.
publishRunAttachments
- تحميل مرفقات الاختبار
boolean
. القيمة الافتراضية: true
.
الاشتراك في نشر مرفقات مستوى التشغيل أو الخروج منها.
failOnMinTestsNotRun
- فشل المهمة إذا لم يتم تشغيل الحد الأدنى لعدد الاختبارات.
boolean
. القيمة الافتراضية: False
.
فشل المهمة إذا لم يتم تشغيل الحد الأدنى لعدد الاختبارات. قد يكون هذا مفيدا إذا أدت أي تغييرات على مدخلات المهمة أو تبعيات محول الاختبار الأساسية إلى العثور على مجموعة فرعية فقط من الاختبارات المطلوبة.
minimumExpectedTests
- الحد الأدنى من عدد الاختبارات
string
. اختياري. استخدم عندما failOnMinTestsNotRun = true
. القيمة الافتراضية: 1
.
يحدد الحد الأدنى لعدد الاختبارات التي سيتم تشغيلها حتى تنجح المهمة. يتم حساب إجمالي الاختبارات المنفذة كمجموع الاختبارات التي تم اجتيازها والفشل وإجهاضها.
diagnosticsEnabled
- جمع التشخيصات المتقدمة في حالة الفشل الكارثي
boolean
. القيمة الافتراضية: false
.
يجمع البيانات التشخيصية لاستكشاف الأخطاء الكارثية وإصلاحها، مثل تعطل الاختبار. عند تحديد هذا الخيار، يتم إنشاء ملف XML تسلسل وإرفاقه بتشغيل الاختبار. يحتوي ملف التسلسل على معلومات حول التسلسل الذي تم تشغيل الاختبارات فيه، بحيث يمكن تحديد اختبار محتمل للجاني.
diagnosticsEnabled
- جمع التشخيصات المتقدمة في حالة الفشل الكارثي
boolean
. القيمة الافتراضية: True
.
يجمع البيانات التشخيصية لاستكشاف الأخطاء الكارثية وإصلاحها، مثل تعطل الاختبار. عند تحديد هذا الخيار، يتم إنشاء ملف XML تسلسل وإرفاقه بتشغيل الاختبار. يحتوي ملف التسلسل على معلومات حول التسلسل الذي تم تشغيل الاختبارات فيه، بحيث يمكن تحديد اختبار محتمل للجاني.
collectDumpOn
- جمع تفريغ العملية وإرفاقها لاختبار تقرير التشغيل
string
. اختياري. استخدم عندما diagnosticsEnabled = true
. القيم المسموح بها: onAbortOnly
(عند الإجهاض فقط)، always
، ، . never
القيمة الافتراضية: onAbortOnly
.
يجمع تفريغا مصغرا يمكن استخدامه لمزيد من التحليل.
- onAbortOnly - سيتم جمع تفريغ صغير فقط عند إحباط تشغيل الاختبار.
- دائما - سيتم دائما جمع تفريغ صغير بغض النظر عما إذا كان تشغيل الاختبار يكتمل أم لا.
- أبدا - لن يتم جمع تفريغ صغير بغض النظر عما إذا كان تشغيل الاختبار يكتمل أم لا.
rerunFailedTests
- إعادة تشغيل الاختبارات الفاشلة
boolean
. القيمة الافتراضية: False
.
يعيد تشغيل أي اختبارات فاشلة حتى تجتاز أو حتى يتم الوصول إلى الحد الأقصى لعدد المحاولات.
rerunType
- لا تقم بإعادة التشغيل إذا تجاوزت حالات فشل الاختبار الحد المحدد
string
. اختياري. استخدم عندما rerunFailedTests = true
. القيم المسموح بها: basedOnTestFailurePercentage
(٪ فشل)، basedOnTestFailureCount
(# من الاختبارات الفاشلة). القيمة الافتراضية: basedOnTestFailurePercentage
.
تجنب إعادة تشغيل الاختبارات عندما يتجاوز معدل الفشل الحد المحدد. ينطبق هذا إذا أدت مشكلات البيئة إلى حالات فشل هائلة. يمكنك تحديد النسبة المئوية للفشل أو عدد الاختبارات الفاشلة كحد.
rerunFailedThreshold
- ٪ فشل
string
. اختياري. استخدم عندما rerunFailedTests = true && rerunType = basedOnTestFailurePercentage
. القيمة الافتراضية: 30
.
تجنب إعادة تشغيل الاختبارات عندما تتجاوز النسبة المئوية لحالات الاختبار الفاشلة الحد المحدد. ينطبق هذا إذا أدت مشكلات البيئة إلى حالات فشل هائلة.
rerunFailedTestCasesMaxLimit
- # من الاختبارات الفاشلة
string
. اختياري. استخدم عندما rerunFailedTests = true && rerunType = basedOnTestFailureCount
. القيمة الافتراضية: 5
.
تجنب إعادة تشغيل الاختبارات عندما يتجاوز عدد حالات الاختبار الفاشلة الحد المحدد. ينطبق هذا إذا أدت مشكلات البيئة إلى حالات فشل هائلة.
rerunMaxAttempts
- الحد الأقصى لعدد المحاولات
string
. اختياري. استخدم عندما rerunFailedTests = true
. القيمة الافتراضية: 3
.
يحدد الحد الأقصى لعدد المرات التي يجب فيها إعادة محاولة الاختبار الفاشل. إذا تم اجتياز اختبار قبل الوصول إلى الحد الأقصى لعدد المحاولات، فلن يتم إعادة تشغيله مرة أخرى.
خيارات التحكم بالمهمة
تحتوي جميع المهام على خيارات التحكم بالإضافة إلى مدخلات المهام الخاصة بها. لمزيد من المعلومات، راجع خيارات التحكم وخصائص المهمة الشائعة.
متغيرات الإخراج
لا شيء
الملاحظات
استخدم هذه المهمة لتشغيل الوحدة والاختبارات الوظيفية (Selenium وAppium واختبار واجهة المستخدم المشفرة والمزيد) باستخدام مشغل Visual Studio Test. إلى جانب الاختبارات المستندة إلى MSTest، يمكن أيضا تنفيذ أطر عمل الاختبار التي تحتوي على محول اختبار Visual Studio، مثل xUnit أو NUnit أو Chutzpah.
يختبر إمكانية تنفيذ إطار عمل .NET الأساسي الهدف عن طريق تحديد قيمة إطار العمل الهدف المناسبة في ملف .runsettings.
يمكن توزيع الاختبارات على عوامل متعددة باستخدام الإصدار 2 من هذه المهمة. لمزيد من المعلومات، راجع تشغيل الاختبارات بالتوازي باستخدام مهمة اختبار Visual Studio.
التحقق من المتطلبات الأساسية
إذا كنت تستخدم وكيلا مستضافا ذاتيا في Windows، فيجب تثبيت هذا الشرط الأساسي:
- .NET Framework 4.6.2 أو إصدار أحدث
المطالب
يجب أن يكون لدى العامل الإمكانية التالية:
vstest
يمكن تلبية الطلب vstest بطريقتين:
- تم تثبيت Visual Studio على جهاز العامل.
- باستخدام مهمة Visual Studio Test Platform Installer في تعريف البنية الأساسية لبرنامج ربط العمليات التجارية.
كيف يمكنني تشغيل الاختبارات التي تستخدم TestCase كمصدر بيانات؟
لتشغيل الاختبارات التلقائية التي تستخدم TestCase كمصدر بيانات، يلزم ما يلي:
- يجب أن يكون لديك Visual Studio 2017.6 أو أعلى على جهاز العامل. لا يمكن استخدام مهمة مثبت Visual Studio Test Platform لتشغيل الاختبارات التي تستخدم TestCase كمصدر بيانات.
- الإنشاء PAT المخول للنطاق "عناصر العمل (كاملة)".
- أضف متغير إنشاء آمن أو إصدار يسمى
Test.TestCaseAccessToken
مع تعيين القيمة إلى PAT الذي تم إنشاؤه في الخطوة السابقة.
أخوض مشكلات عند تشغيل اختبارات xUnit وNUnit المستندة إلى البيانات مع بعض خيارات المهمة. هل هناك قيود معروفة؟
تحتوي الاختبارات المستندة إلى البيانات التي تستخدم أطر عمل اختبار xUnit وNUnit على بعض القيود المعروفة ولا يمكن استخدامها مع خيارات المهمة التالية:
- إعادة تشغيل الاختبارات الفاشلة.
- توزيع الاختبارات على عوامل متعددة وخيارات تجميع.
- اختبار تحليل التأثير.
القيود المذكورة أعلاه هي بسبب كيفية اكتشاف المحولات لأطر عمل الاختبار هذه والإبلاغ عن الاختبارات المستندة إلى البيانات.
هل تدعم مهمة VSTest تشغيل الاختبارات التي تستهدف أطر عمل مستهدفة متعددة في كل مرة؟
نعم، بدءا من الإصدار 17.3
VSTest يدعم تشغيل الاختبارات التي تستهدف أطر عمل مستهدفة متعددة في كل مرة.
قبل ذلك، لم يكن هذا ممكنا بسبب قيود من جانب النظام الأساسي VSTest .
إذا كنت ترغب في تشغيل الاختبارات التي تنتمي إلى أطر عمل مستهدفة متعددة، فستحتاج إلى تثبيت إصدار متوافق من VSTest عبر Visual Studio Test Platform Installer وتعيينه vsTestVersion
لاستخدامه toolsInstaller
.
أثناء نشر نتيجة الاختبار، الحصول على هذا الخطأ: فشل نشر نتائج الاختبار: تم تحديد أولوية غير صالحة؟
يحدث هذا الخطأ إذا تم تعيين أولوية لأي من أساليب الاختبار فوق 255، قم بإصلاح أولوية أسلوب الاختبار في التعليمات البرمجية وتنفيذ الاختبارات مرة أخرى. يمكنك مراجعة ملف trx الذي تم إنشاؤه لمشاهدة جميع الاختبارات ذات الأولوية الأكبر من 255.
المتطلبات
المتطلبات | الوصف |
---|---|
أنواع البنية الأساسية لبرنامج ربط العمليات التجارية | YAML، الإصدار الكلاسيكي، الإصدار الكلاسيكي |
يعمل على | Agent, DeploymentGroup |
المطالب | يجب أن يكون لدى العوامل المستضافة ذاتيا قدرات تطابق الطلبات التالية لتشغيل المهام التي تستخدم هذه المهمة: vstest |
القدرات | لا تفي هذه المهمة بأي متطلبات للمهام اللاحقة في الوظيفة. |
قيود الأوامر | أي |
متغيرات Settable | أي |
إصدار الوكيل | 2.103.0 أو أحدث |
فئة المهمة | الاختبار |