我正在尝试从命令行运行我的测试,方法是从命令行指定测试套件。在我的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}}
请有人告诉我我哪里出错了。
答案 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文件中的错误消失了,我可以通过命令行传递参数