我正在使用TestNg和Maven以及surefire插件来运行我的测试。我有几个不同的测试,我想在同一个pom中运行。目前要做到这一点我定义了两个不同的XML文件,并且我已经定义了两个配置文件来运行不同的xml文件,但这会不断抛出错误!
我不知道应该如何解决这个问题。 任何帮助将不胜感激!
<profile>
<id>run</id>
<activation>
<property>
<name>start</name>
<value>true</value>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skip>true</skip>
<suiteXmlFiles>
<suiteXmlFile>${project.build.directory}/resources/testng.xml</suiteXmlFile>
</suiteXmlFiles>
</configuration>
<executions>
<execution>
<id>test</id>
<phase>integration-test</phase>
<goals>
<goal>test</goal>
</goals>
<configuration>
<skip>false</skip>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
想象一下,配置文件2几乎相同但是xml套件文件是不同的
我收到解析错误:它无法在suiteXmlFile中找到测试类。但是,如果我只使用一个配置文件只有一个xml文件,那么它是可以接受的。失败的那个也有效。
答案 0 :(得分:3)
尝试将suiteXmlFiles移动到执行配置并使用更适合集成测试的maven-failsafe-plugin