使用 nugget coverlet.msbuild / 2.3.1 对 azure devops 进行单元测试时出现错误 运行
Error running unit tests on azure devops with nugget coverlet.msbuild / 2.3.1
当我 运行 dotnet 测试任务时,测试 运行 正确但是当以 xml 格式生成报告文件时,我收到以下错误:
/home/adminuser/.nuget/packages/coverlet.msbuild/2.3.1/build/netstandard2.0/coverlet.msbuild.targets(17,5):
error : Method not found: 'Void
System.IO.FileStream..ctor(System.String, System.IO.FileMode,
System.IO.FileAccess, System.IO.FileShare)'.
项目配置文件(.csproj)如下:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp3.0</TargetFramework>
<IsPackable>false</IsPackable>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="coverlet.msbuild" Version="2.3.1">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.6.1" />
<PackageReference Include="MSTest.TestAdapter" Version="2.1.2" />
<PackageReference Include="MSTest.TestFramework" Version="2.1.2" />
<PackageReference Include="NSubstitute" Version="4.2.2" />
</ItemGroup>
</Project>
注:
管道 运行 正常,但时不时开始产生以下错误
您正在使用自托管代理 运行 管道,因此该命令应在您的本地环境中执行。您可以尝试以下步骤来解决问题:
1.Clean the package cache,再次删除bin and obj folder
和运行 dotnet test 命令。
2.Update coverlet.msbuild
包从 2.3.1 到最新的 2.9.0。
另外:
要生成 xml 报告(coverage.cobertura.xml): 你应该使用 coverlet.collector
包和命令 dotnet test --collect:"XPlat Code Coverage"
.
要生成 json 报告(coverage.json):您应该使用 coverlet.msbuild
包和命令 dotnet test /p:CollectCoverage=true
。
查看更多详情coverlet-coverage/coverlet。
当我 运行 dotnet 测试任务时,测试 运行 正确但是当以 xml 格式生成报告文件时,我收到以下错误:
/home/adminuser/.nuget/packages/coverlet.msbuild/2.3.1/build/netstandard2.0/coverlet.msbuild.targets(17,5): error : Method not found: 'Void System.IO.FileStream..ctor(System.String, System.IO.FileMode, System.IO.FileAccess, System.IO.FileShare)'.
项目配置文件(.csproj)如下:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp3.0</TargetFramework>
<IsPackable>false</IsPackable>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="coverlet.msbuild" Version="2.3.1">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.6.1" />
<PackageReference Include="MSTest.TestAdapter" Version="2.1.2" />
<PackageReference Include="MSTest.TestFramework" Version="2.1.2" />
<PackageReference Include="NSubstitute" Version="4.2.2" />
</ItemGroup>
</Project>
注: 管道 运行 正常,但时不时开始产生以下错误
您正在使用自托管代理 运行 管道,因此该命令应在您的本地环境中执行。您可以尝试以下步骤来解决问题:
1.Clean the package cache,再次删除bin and obj folder
和运行 dotnet test 命令。
2.Update coverlet.msbuild
包从 2.3.1 到最新的 2.9.0。
另外:
要生成 xml 报告(coverage.cobertura.xml): 你应该使用 coverlet.collector
包和命令 dotnet test --collect:"XPlat Code Coverage"
.
要生成 json 报告(coverage.json):您应该使用 coverlet.msbuild
包和命令 dotnet test /p:CollectCoverage=true
。
查看更多详情coverlet-coverage/coverlet。