根据配置(scoverageCompile 与 scoverageTest),类的排除发生在 scoverage 中,代码覆盖率差异很大。
结合 scoverageCompile / scoverageTest 排除文件如何影响代码覆盖率?
根据配置(scoverageCompile 与 scoverageTest),类的排除发生在 scoverage 中,代码覆盖率差异很大。
结合 scoverageCompile / scoverageTest 排除文件如何影响代码覆盖率?
如果您在 scoverageCompile 中排除类,那么出于计数语句的目的,它们将被忽略。
假设您有 2 个类文件 A 和 B,每个类文件有 10 个语句,因此总共有 20 个语句。如果 A 类具有 10% 的覆盖率 (1/10),B 类具有 90% 的覆盖率 (9/10),那么您的总体覆盖率是 50% (10/20)。如果您排除 A 类,那么您的整体覆盖率现在为 90%。如果排除 B 类,则为 10%。
在 scoverageTest 中设置排除类不会做任何事情,您会看到覆盖率,就像没有任何排除一样。在编译时设置键是有意义的,因为您排除了编译范围类,您没有排除测试。