我需要组织我的应用程序的功能测试。我需要使用 selenium grid + testng + webdriver。正如我发现设置项目的好方法是在eclipse中使用maven。我已经设置了 selenium 网格,但不知道如何适当地设置将与所有这些工具一起使用的 maven 项目。也许有人有这方面的经验或有用的链接。提前致谢
问问题
2168 次
1 回答
2
如果你想在 maven 中使用 testng 测试,你需要设置 maven surefire 插件来启动你在 testng 中定义的测试套件。
首先,您需要在依赖项中包含 testng,因此将其添加到您的 pom.xml 文件中:
<dependencies>
[...]
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.3.1</version>
<scope>test</scope>
</dependency>
[...]
</dependencies>
然后你需要告诉surefire正在使用哪个测试套件,假设它是suite.xml:
<plugins>
[...]
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.13</version>
<configuration>
<suiteXmlFiles>
<suiteXmlFile>testng.xml</suiteXmlFile>
</suiteXmlFiles>
</configuration>
</plugin>
[...]
</plugins>
如我所见,您正在使用网格,因此如果您想并行运行它们,您可以在 pom.xml 文件的插件部分执行以下操作:
</plugins>
[...]
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.13</version>
<configuration>
<parallel>methods</parallel>
<threadCount>10</threadCount>
</configuration>
</plugin>
[...]
</plugins>
当然,您需要在该 PC 和至少一个客户端上运行 selenium hub。确保您的测试配置为使用 selenium grid2 而不是本地 webdriver 运行。
问候,
圣地亚哥
于 2013-01-07T11:59:43.387 回答