Hudson 和 Maven 测试运行两次

Posted

技术标签:

【中文标题】Hudson 和 Maven 测试运行两次【英文标题】:Hudson and Maven tests run twice 【发布时间】:2011-05-30 02:59:44 【问题描述】:
Parsing POMs
Discovered a new module be.howest:someproject someproject

我第一次做哈德逊工作时似乎找到了一个新模块。好吧,没什么好担心的,但它似乎执行了两次,我真的不知道为什么。另一件事是:它给出了这个奇怪的错误(至少对我来说):

[WARNING] Removing: cobertura from forked lifecycle, to prevent recursive invocation.
[WARNING] Removing: findbugs from forked lifecycle, to prevent recursive invocation.

对我来说,这看起来像是尝试执行两次,但为什么要逃避我。 此外,它在构建下有一个模块,这是我不太熟悉的东西,但如果它没有进行两次测试,我不会太费心(并认为这很正常)。

现在它正在运行两个阶段:cleantest。我把它改成了clean package,因为我在包生命周期中包含了javadoc,但没有任何改变。


Hudson 控制台日志:http://pastebin.com/2GRmc2yP Pom.xml:http://pastebin.com/HL9Qd821

【问题讨论】:

【参考方案1】:

Maven 将首先在没有任何检测的情况下执行测试,然后它将执行 cobertura 插件,该插件将检测类并重新运行所有测试。因此,测试将被执行两次。

【讨论】:

【参考方案2】:

cobertura 使测试第二次运行。

【讨论】:

以上是关于Hudson 和 Maven 测试运行两次的主要内容,如果未能解决你的问题,请参考以下文章

测试技术MAVEN集成测试环境搭建

maven项目中junit测试同一方法, 运行一次却重复执行了两次?

通过Maven一起运行jUnit和spock测试

在hudson中为build构建环境变量

如何停止 Maven 的验证阶段重建工件?

Maven 其他功能