我有一个带有多个模块的Maven项目。 模块A包含100个测试用例。模块B取决于模块A,包含50个测试用例。 在jenkins上运行我的Maven构建时,模块B开始显示150个测试,另外100个测试的名称与模块A的名称相对应。
值得注意的是,模块A包含一个自定义的Maven配置文件,以在“每天”运行测试时排除某些测试,而广泛的测试集在夜间运行。
我有另一种测试配置,其中A进行了更广泛的测试,模块B再次显示了额外的测试。
如何停止Maven在模块B中再次运行测试?
编辑:行家的目标分别是verify
和verify -P !defaultTestSet
。在构建之前删除工作空间并没有任何改变。
编辑2:如果通过verify -pl !A
排除了模块A,则不会在模块B中进行测试。
答案 0 :(得分:0)
我弄清楚了这个问题:詹金斯实际上并没有运行两次测试,只是向其他模块展示了它们。
原因是maven-surefire-plugin
的配置中。当我们从可运输状态切换到reportDirectory
时,其设置为“ ... / shippable / reports /”。来自两个模块的测试报告最终都在同一个模块中。当詹金斯报告第一个模块的测试时,没有问题,因为只有那个模块的测试在那儿。在报告第二个模块的测试时,两个模块的报告都在其中,并进入了报告。