- 安装 dotnet-coverage 和 dotnet-reportgenerator
dotnet tool install -g dotnet-coverage
dotnet tool install -g dotnet-reportgenerator-globaltool
- 运行测试, 输出XML格式:
dotnet-coverage collect -f xml -o coverage.xml dotnet test <solution/project>
例如:在测试项目文件目录 AA.BB.CC.Api.Test 下对项目文件 AA.BB.CC.Api.Test.csproj 进行测试覆盖收集
dotnet-coverage collect -f xml -o coverage.xml dotnet test ./AA.BB.CC.Api.Test.csproj
这样会在测试项目文件目录 AA.BB.CC.Api.Test 下生成 coverage.xml 文件
- 利用上一步生成的xml文件生成 html 覆盖率报告
reportgenerator -reports:"D:\SolutionDir\AA.BB.CC.Api.Test\coverage.xml" -targetdir:"coveragereport" -reporttypes:Html
- 查看报告
同目录 coveragereport 下会生成 html报告文件,打开 index.html 就会看到代码覆盖率
一般需要两个命令一起执行
dotnet-coverage collect -f xml -o coverage.xml dotnet test ./AA.BB.CC.Api.Test.csproj
reportgenerator -reports:".\coverage.xml" -targetdir:"coveragereport" -reporttypes:Html