是否自动更新了testng.xml文件

时间:2014-03-18 16:17:12

标签: maven testng

使用mvn运行testng时,我根据需要配置了我的工作区: 我的pom.xml文件配置了所有必需的依赖项,testng.xml包含所有必需的类。

然而,当我添加一个新的测试类时,testng.xml不会自动更新 - 它不应该从根扫描进行相应的测试吗?或者我是否必须手动更新testng.xml文件?  (顺便说一句,我的工作区是根据以下帖子配置的:How to call testng.xml file from pom.xml in Maven

1 个答案:

答案 0 :(得分:1)

xml方法可以更精细地控制测试集。它不会自动更改,但如果您选择说出一个文件夹并右键单击run作为testng,eclipse将动态生成xml配置。如果您只想运行所有testng带注释的测试,并且您已经使用surefire或failsafe正确配置了maven,那么您甚至不需要xml文件。只需运行" mvn verify"并且所有测试都应该基于注释运行。如果这不起作用,请发布您的surefire / failsafe pom部分。

如果要在maven中配置特定的xml,请使用类似(surefire或failsafe工作相同的内容)。

<plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-failsafe-plugin</artifactId>
                <version>${failsafe.version}</version>
                <configuration>
                    <argLine>-Xmx1024m</argLine>
                </configuration>
                <executions>
                    <execution>
                        <id>integration-test</id>
                        <phase>integration-test</phase>
                        <goals>
                            <goal>integration-test</goal>
                        </goals>
                        <configuration>
                            <suiteXmlFiles>
                                <suiteXmlFile>testng.xml</suiteXmlFile>
                                <!-- <groups>functest,perftest</groups> -->
                            </suiteXmlFiles>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

如果您确实需要更精细的控制,并且想要使用maven指定的xml文件,则可以通过&#34; verify -P MyProfile&#34;

启动它。
<profiles>
        <profile>
            <id>MyProfile</id>
            <build>
                <plugins>
                    <plugin>
                        <artifactId>maven-failsafe-plugin</artifactId>
                        <configuration>
                            <suiteXmlFiles>
                                <suiteXmlFile>MyProfile.xml</suiteXmlFile>
                                <!-- <groups>functest,perftest</groups> -->
                            </suiteXmlFiles>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>MyOtherProfile</id>
            <build>
                <plugins>
                    <plugin>
                        <artifactId>maven-failsafe-plugin</artifactId>
                        <configuration>
                            <suiteXmlFiles>
                                <suiteXmlFile>MyOtherProfile.xml</suiteXmlFile>
                                <!-- <groups>functest,perftest</groups> -->
                            </suiteXmlFiles>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
<profiles>