Структура моего проекта следующая:
.
├── 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
указывает на мое приложениеПуть к тестам: 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 предполагает путь к debug dll, а не release версии, как это должно быть и происходит сбой.
Ссылка на полный скрипт сборки