Maven TestNG - 无法从命令行指定测试套件

时间:2018-03-08 14:02:12

标签: java maven testng

我正在尝试从命令行运行我的测试,方法是从命令行指定测试套件。在我的pom文件中,它显示“无法解析符号'suiteXmlFile'(对于$ {suiteXmlFile)。如果我在pom文件中指定WebCheckout.xml的名称,它可以工作,但我希望能够从命令行运行它这样:

<plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.12.4</version>
            <configuration>
                <suiteXmlFiles>
                    <suiteXmlFile>${suiteXmlFile}</suiteXmlFile>
                </suiteXmlFiles>
            </configuration>
        </plugin>

我一直在关注本教程:

http://www.seleniumeasy.com/maven-tutorials/choose-selected-testng-xml-files-to-execute-using-maven

我的pom文件配置如下:

{{1}}

请有人告诉我我哪里出错了。

2 个答案:

答案 0 :(得分:1)

This is an issue affecting 2.12(以及可能的先前版本),所以只需使用已修复的surefire插件version >= 2.18.1。我尝试了2.21.0(最新的ATM),它按预期工作(虽然我在test/resources目录中有我的XML,所以我必须指定-Dsurefire.suiteXmlFiles=src\test\resources\test.xml

答案 1 :(得分:1)

我遇到了同样的问题,只是更新surefire插件的版本无济于事-我也需要添加到pom following属性中

<properties>
        <suiteXmlFile>SOME_DEFAULT_VALUE.xml</suiteXmlFile>
 </properties>

之后,pom文件中的错误消失了,我可以通过命令行传递参数