如何在 EclEmma 中从覆盖率计算中排除类,而不实际将它们从覆盖率本身中排除
2022-09-02 13:40:24
出于技术原因,可能有必要从代码覆盖率分析中排除某些类。以下选项将覆盖范围代理配置为从分析中排除某些类。除了性能优化或技术角情况外,这些选项通常不是必需的。
排除:应从执行分析中排除的类名的列表。列表条目由 a 分隔,可以使用colon (:)
wildcard characters (* and ?). (Default: empty)
排除类装入器:应从执行分析中排除的类装入器名称的列表。列表条目由 分隔,可以使用 。如果特殊框架与 JaCoCo 代码检测冲突,特别是无权访问 Java 运行时类的类装入器,则可能需要此选项。colon (:)
wildcard characters (* and ?)
(Default:
sun.reflect.DelegatingClassLoader)
警告:请谨慎使用这些选项!无效的条目可能会破坏代码覆盖率启动器。也不要使用这些选项来定义分析的范围。已排除的类仍将显示为未涵盖。
<filter includes="com.foo.*" excludes="com.foo.test.*,
com.foo.*Test*" />
<filter includes="com.foo.*" /> <filter excludes="com.foo.test.*,
com.foo.*Test*" />
<filter value="+com.foo.*, -com.foo.test.*, -com.foo.*Test*" />
其中 myfilters.txt 文件包含以下行:
<filter excludes="com.foo.*Test*" file="myfilters.txt" />
-com.foo.test.*
+com.foo.*
Preferences->Java->Code Coverage
并将选项设置为 - 似乎工作得很好"Only path entries matching"
src/main/java