我想从Java Maven项目的命令行中选择多个TestNG组。这是一个例子:
@Test(groups = { "AAA, BBB, CCC" })
public class MobileAccountTest {
@Test
public void testA() {
System.out.println("* MobileAccountTest.testA()");
}
}
当我在命令行中运行它:mvn clean test -Dgroups="AAA"
时,Maven找到0个要运行的测试。如果我运行mvn clean test -Dgroups="BBB"
也一样。但是,如果我运行mvn clean test -Dgroups="CCC"
,它确实找到并运行测试。为什么它只识别最后一组参赛作品?基于TestNG在线书籍摘录,我在java代码中尝试了这个:@Test(groups = { "AAA.BBB.CCC" })
,然后在命令行:mvn clean test -Dgroups="AAA.*"
,但这使得Maven抛出错误:Caused by: org.apache.maven.surefire.group.parse.TokenMgrError: Lexical error at line 1, column 10. Encountered: <EOF> after : ""
那么正确的命令行语法是什么?
尝试将不同的组放在不同的引文中。例如:
@Test(groups = {“AAA”,“BBB”,“CCC”})