【问题标题】:Exclude a file or package from the Clover report using ant build script使用 ant 构建脚本从 Clover 报告中排除文件或包
【发布时间】:2017-07-24 20:13:13
【问题描述】:

我正在使用一个简短的 ant 脚本来生成我的 Clover 覆盖率报告。我想从报告中排除某些源文件。代码已经完全检测,我在检测期间排除文件是不可行的。

ant build xml 的摘录(修剪):

<project name="Clover Coverage" default="clover.report" basedir="${basedir}">
    <target name="clover.report">
        <clover-report initstring="${cloverdb}" >
            <current outfile="${reportdir}" title="${title}" >
                <format type="html"/>
                <sourcepath>
                    <pathelement path="${srcdir1}"/>
                </sourcepath>
            </current>
        </clover-report>
    </target>
</project>

我尝试使用fileset 排除此问题,但是当我这样做时,Clover 会给出一条错误消息,指出找不到覆盖信息。但如果我删除文件集,它就可以正常工作。

我尝试的修复无效:

            <current outfile="${reportdir}" title="${title}" >
                <format type="html"/>
                <fileset dir="${srcdir1}">
                    <exclude name="**/ExcludeThisClass.java"/>
                </fileset>
                <sourcepath>
                    <pathelement path="${srcdir1}"/>
                </sourcepath>
            </current>

是否无法从 Clover 报告中排除文件?

【问题讨论】:

  • An Ant &lt;fileset&gt; 需要 dirfile 属性。看看将dir="${srcdir1}" 添加到&lt;fileset&gt; 时会发生什么。
  • @ChadNouis 你说得对,这是我复制粘贴中的错字。我会更新问题。我正在尝试各种事情,并尝试删除dir="${srcdir1}"。当我有它时,它会报告[clover-report] No coverage recordings found. No report will be generated.

标签: java ant clover


【解决方案1】:

请使用调试日志 (ant -d) 运行您的 Ant。 任务应该打印更多详细信息。您最有可能不是一次而是在多个构建/测试会话中检测和/或执行您的源代码。

Clover 很可能拒绝了一些录音文件,因为它发现它们已过期。

查看这些知识库文章:

https://confluence.atlassian.com/cloverkb/ignoring-coverage-recording-files-300816998.html

https://confluence.atlassian.com/cloverkb/no-coverage-recordings-found-no-report-will-be-generated-611812757.html

【讨论】:

    猜你喜欢
    • 2012-10-05
    • 2011-11-26
    • 2018-09-22
    • 1970-01-01
    • 2017-02-11
    • 2015-01-17
    • 2010-11-12
    • 2011-03-06
    • 1970-01-01
    相关资源
    最近更新 更多