大家好,我用Visual Studio在开发一个方案,想为里面的项目加入单元测试。
阶层如下,有 5 个项目,2 个用于测试Project1和Project2:
方案
|
|- Project1 (100 行)
|- Project2 (100 行)
|- Project3 (100 行)
|
|- Project1.UnitTests
|- Project2.UnitTests
我跟随微软的教学,取得此方案的代码覆盖率,并导出为文档:
dotnet tool install dotnet-reportgenerator-globaltool --tool-path tools
dotnet test --test-adapter-path:. --collect:"XPlat Code Coverage"
reportgenerator "-reports:./**/coverage.cobertura.xml" "-targetdir:Reports_Coverage" -reportTypes:TextSummary;
虽然文档有覆盖率,但是计算未将Project3纳入公式中:
- Project1、Project2和Project3各有100行代码,Project1、Project2都经过测试并有100%的覆盖率,而Project3则为0%(没有测试)
- ReportGenerator给我的总覆盖率是100%(因为Project1和Project2都有100%的覆盖率)
- 但我期望的是67%的覆盖率(将完全没有写测试的Project3纳入公式中)
想请教如何取得包括包含无测试的项目的代码覆盖率?
谢谢。