Maven TestNG surefire插件通过终端运行组

时间:2015-12-03 01:37:37

标签: maven testng maven-surefire-plugin

我正在尝试让maven命令行运行某个组。我注释了我的测试如下:

@Test(priority = 2, groups = "MyGroup")
public void myFirstTest(){};

然后我通过命令行启动测试运行:

mvn clean install test -Dgroups=MyGroup

Aaaaannnndddd什么都没跑。 Maven启动,然后退出说没有测试。像这样:

Tests run: 0, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 38.071 sec - in TestSuite

现在我尝试了一些东西。 1。我尝试放入一个testng.xml文件并添加组名" MyGroup"到文件。然后我在我的pom.xml中引用这个文件:

                    <suiteXmlFiles>
                        <!-- command to run "mvn clean test -DsuiteFile=src/test/resources/testng.xml" -->
                        <suiteXmlFile>src/test/resources/testng.xml</suiteXmlFile>
                    </suiteXmlFiles>

当我使用命令行重新运行时,它可以工作。现在我知道我们不需要添加一个指定组名的xml文件。由于这是由maven动态制作的,所以我错过了什么。

另外,我在方法覆盖变换器

中放置了一个断点
    @Override
    public void transform(ITestAnnotation annotation, Class testClass, Constructor testConstructor, Method testMethod) {

annotation.getGroups()始终是一个空数组。这意味着maven没有通过测试组。为什么!!!。我真的没有看到它,并且已经在这里乱砍了几个小时,任何帮助都会非常感激。

0 个答案:

没有答案