构建运行良好,但看不到单元测试结果。添加了使用经典编辑或用于我的解决方案的构建管道。
并且代码覆盖率也为空白。我在解决方案中有两个项目和一个测试项目。单元测试任务返回的结果如下:
A total of 14 test files matched the specified pattern.
No test is available in d:\a\1\s\src.net...
Make sure that test discoverer & executors are registered and platform & framework version settings are appropriate and try again.
Results File: d:\a\_temp\TestResults\VssAdministrator_fv-az686_2019-12-26_06_10_28.trx
Attachments:
d:\a\_temp\TestResults\d301a26b-d99f-4b4e-bbe8-c95e588ee1c5\VssAdministrator_fv-az686 2019-12-26 06_10_20.coverage
Vstest.console.exe exited with code 0.
**************** Completed test execution *********************
Test results files: d:\a\_temp\TestResults\VssAdministrator_fv-az686_2019-12-26_06_10_28.trx
No Result Found to Publish 'd:\a\_temp\TestResults\VssAdministrator_fv-az686_2019-12-26_06_10_28.trx'.
Created test run: 1006840
Publishing test results: 0
Publishing test results to test run '1006840'.
TestResults To Publish 0, Test run id:1006840
Published test results: 0
Publishing Attachments: 2
Completed TestExecution Model...
而且我也无法从“测试”窗口中看到。
测试YAML
脚本如下:
steps:
- task: VSTest@2
displayName: 'Test Assemblies'
inputs:
testAssemblyVer2: |
**\$(BuildConfiguration)\*test*.dll
!**\obj\**
codeCoverageEnabled: true
platform: '$(BuildPlatform)'
configuration: '$(BuildConfiguration)'
答案 0 :(得分:1)
您的YAML没任何问题,相同的定义对我都适用。
总共有14个测试文件符合指定的模式。
d:\ a \ 1 \ s \ src.net中没有测试可用...
基于这些错误消息,已从文件夹中识别出测试文件,这意味着dll现在已经存在。但是它仍然说没有可用的测试,这更多是与vstest.console.exe
相对,没有标识测试。
例如,如果您的测试项目类型为NUnit
,则可以使用一个扩展名NUnit测试适配器来支持在Visual Studio中运行的该测试类型。
但是,当项目发布到VSTS中时,此扩展也无法发布,并且此扩展在VSTS托管代理中不存在。如果没有此扩展支持,vstest.console.exe
将无法识别Nunit test
,然后它将提示类似No test is available in xxxxxxx
的消息。请参阅this。
但是,您可以安装nuget软件包来替换该VS扩展的角色。
如果类型为Nunit测试,则必须确保在NUnit
文件中的软件包NUnit3TestAdapter
和csproj
上添加引用:
<PackageReference Include="NUnit">
<Version>3.12.0</Version>
</PackageReference>
<PackageReference Include="NUnit3TestAdapter">
<Version>3.15.1</Version>
</PackageReference>
tp xUnit test
类似方法。