gpt4 book ai didi

powershell - 为什么 dotnet 测试工具没有创建代码覆盖率报告?

转载 作者:行者123 更新时间:2023-12-02 22:57:27 26 4
gpt4 key购买 nike

我的项目结构如下:

.
├── Application
├── Application.Core
├── Application.Domain
├── Application.Tests
├── Application.IntegrationTests
└── README.md

运行我的测试的命令我使用以下输入:
dotnet test $folder.FullName -c Release --no-build /p:CoverletOutput='$root\coverage' /p:MergeWith='$root\coverage.json' /p:CoverletOutputFormat=opencover 

哪里 $folder指向我的 Application.Tests 路径: C:\projects\coredemoapp\CoreDemoApp.Tests$rootC:\projects\coredemoapp\
所有测试都成功运行。然而,问题在于 coverage.json也不是 coverage.opencover.xml不创建文件。

我也尝试使用 coverlet直接使用以下命令:
coverlet <path to test.dll> -
-target "dotnet" --targetargs "test --no-build" --merge-with $root\coverage.json --format opencover

,一切都在我的本地机器上运行,并具有指向 dll 的显式路径。但是在用前面的 $folder.FullName运行命令的情况下如 <path to assembly> ,coverlet 假设一条通往 的路径调试 dll,而不是 发布 版本,它应该和失败。

Link to the full build script

最佳答案

基本上我忘了添加coverlet msbuild NuGet package进入我的测试项目。之后,使用以下命令一切正常:

dotnet test $folder.FullName -c Release --no-build /p:CollectCoverage=true /p:CoverletOutput=$root\coverage /p:CoverletOutputFormat=opencover

关于powershell - 为什么 dotnet 测试工具没有创建代码覆盖率报告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58669286/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com