Junit排除测试未显示为Skipped

时间:2014-10-13 16:23:18

标签: maven junit junit4 maven-surefire-plugin

我们有一个典型的Maven / Surefire / Junit设置。我们已将部分测试分类为具有Junit categories功能的SlowTests。

当我们运行测试(mvn test)时,默认行为是跳过SlowTests。我们通过在surefire定义中定义“excludedGroups”来完成此任务。

我认为在测试输出中,排除的测试将计入“跳过”测试的数量。但“跳过”测试总是显示为“0”!!

如何使这些排除的测试计入“跳过”测试?一般来说,Junit / Surefire何时会显示“Skipped”测试> 0?

2 个答案:

答案 0 :(得分:1)

Skipped 表示该测试是Surefire执行的候选者,但发现@IgnoreAssume语句失败。

如果您希望慢速测试显示为跳过,则可以使用Maven设置系统属性并使用Assume方法中的@BeforeClass语句对其进行测试。也许你的慢速测试可以扩展执行此检查的父类。

如果你想这样做,Surefire插件也可以设置环境变量,请参阅https://stackoverflow.com/a/9622482/474189

答案 1 :(得分:0)

在测试方法上方添加@Ignore。这样的事情:

   @Ignore
   @Test
   public void test method() {}