如何在TestNG和Maven failsafe插件中标记非关键测试用例

如何在TestNG和Maven failsafe插件中标记非关键测试用例,testng,maven-failsafe-plugin,Testng,Maven Failsafe Plugin,即使非关键测试用例失败,测试执行也应该成功。当您知道测试已中断且无法立即修复时,可以使用@Ignore注释。这样的测试将不会执行,构建将通过 另一个选项是注释掉@Test annotation: // @Test public void testMethod(){ ... } 您可以将测试标记为属于一个组,比如说UNDERDEV。实现侦听器。在afterInvocation方法中,写一些大意为 if((testResult.getStatus() == TestResult.FAILURE

即使非关键测试用例失败,测试执行也应该成功。

当您知道测试已中断且无法立即修复时,可以使用@Ignore注释。这样的测试将不会执行,构建将通过

另一个选项是注释掉@Test annotation:

// @Test
public void testMethod(){
  ...
}

您可以将测试标记为属于一个组,比如说UNDERDEV。实现侦听器。在afterInvocation方法中,写一些大意为

if((testResult.getStatus() == TestResult.FAILURE)  && Arrays.asList(method.getTestMethod().getGroups()).contains("UNDERDEV"))
            //Set status to passed

谢谢ikrnac。我的问题背后的原因是“如果我正在开发一个很长的测试用例,我知道它会中断运行,但仍然希望在构建周期开发之前进行测试。如果有任何方法可以将这个测试用例标记为可以在构建周期中运行的开发测试用例,并且我的构建应该是绿色的。这对我来说没有意义。当我创建失败的测试并且我想用构建运行它时,我想不出用例。这是一个当我们遵循自动测试驱动开发(ATDD)时的用例。这是持续开发和TDD(您称之为ATDD)过程的基本原则:失败的测试必须使构建失败。顺便说一句,当我在谷歌上搜索ATDD时,它指向了验收测试驱动的开发。这显然是不同的术语。