Java 如何使用Maven完全自动化Saucelabs测试?
这是我试图自动化的工作流(它是一个Java web应用程序):Java 如何使用Maven完全自动化Saucelabs测试?,java,selenium,saucelabs,Java,Selenium,Saucelabs,这是我试图自动化的工作流(它是一个Java web应用程序): 开发人员在Selenium IDE(带Firefox)中创建/编辑测试套件 该套件在项目存储库中作为HTML文件的集合进行维护 在每个Maven构建周期中: 码头集装箱在http://localhost:12345(随机端口号) 开始连接我的本地主机和Saucelabs网格 HTML测试套件在网格上针对我的本地容器执行 SauceConnect已关闭 码头集装箱关闭了 如果测试套件中的任何测试失败-Maven build失败 有可
http://localhost:12345
(随机端口号)http://ondemand.saucelabs.com:80/selenium-服务器/驱动程序/
,我可以使用它,但我没有找到任何有关它的详细信息。我最近创建了一个,它提供mojo来启动和停止Sauce Connect进程
这将允许您使用Cargo(可配置为启动Jetty)、Failsafe]和Sa司Connect的组合来实例化容器和Sa司Connect,运行测试,并在测试完成后关闭容器和Sa司Connect,所有这些都可以通过调用mvn verify
来运行
通过将以下内容添加到pom.xml文件中,可以将Sauce Connect Maven插件包含在项目中:
<build>
<plugins>
<!-- Include Sauce Connect plugin -->
<plugin>
<groupId>com.saucelabs.maven.plugin</groupId>
<artifactId>sauce-connect-plugin</artifactId>
<version>1.0.15</version>
<configuration>
<sauceUsername>YOUR_SAUCE_USERNAME</sauceUsername>
<sauceAccessKey>YOUR_SAUCE_ACCESS_KEY</sauceAccessKey>
</configuration>
<executions>
<!-- Start Sauce Connect prior to running the integration tests -->
<execution>
<id>start-sauceconnct</id>
<phase>pre-integration-test</phase>
<goals>
<goal>start-sauceconnect</goal>
</goals>
</execution>
<!-- Stop the Sauce Connect process after the integration tests have finished -->
<execution>
<id>stop-sauceconnect</id>
<phase>post-integration-test</phase>
<goals>
<goal>stop-sauceconnect</goal>
</goals>
</execution>
</executions>
</plugin>
...
</plugins>
</build>
<pluginRepositories>
<pluginRepository>
<id>saucelabs-repository</id>
<url>http://repository-saucelabs.forge.cloudbees.com/release</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
com.saucelabs.maven.plugin
,它演示了Sauce Connect插件以及Cargo和Failsafe的用法
该插件是相当新的,所以请让我知道如果你有任何反馈 看起来很棒,谢谢!它是否支持在同一台服务器上并行执行同一构建?它应该支持并行执行,因为代码正在重用Sauce CI插件中包含的逻辑,从而确保每个Sauce用户运行一个Sauce Connect实例,并且Sauce Connect仅在调用它的最后一个进程完成时关闭。如果有任何问题,请告诉我:)