我的项目结构如下:
.
├── 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
和$root
C:\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 的路径,而不是它应该的发布版本并且失败。