简介
这篇文章解释了如何在平行的执行时间减少,而无需使用硒电网运行中的硒HTML(Selenese)为基础的测试套件。背景
目前,硒电网提供运行硒在C#,JAVA,红宝石,和PHP笔试。但是,有没有客户端驱动程序Selenese测试用例。在这篇文章中提出的想法是并行运行Selenese测试的情况下,减少执行时间的解决方法。
真实的情景:这种方法之前,我们执行中硒的功能测试亚军Selenese测试,并花了近2小时的并行执行在浏览器中8个测试套件。通过这种方法,我们已经减少到15分钟的时间,执行相同的8测试套件。使用代码
所附的zip文件是一个示例的Ant构建脚本,执行初始化他们在不同的硒远程控制并行测试套件。要设置环境,你需要下面的计算机上安装的工具:蚂蚁PSEXEC硒的远程控制颠覆(可选:如果测试用例在Subversion版本库)
下面的代码片段设置所需的路径根据您的环境。例如Selenium服务器的路径,基本URL,路径Selenium测试和路径,保存生成的硒报告:<!-- Path to Selenium Server Binaries-->
<property name="SeleniumServerPath" value="C:\Path-to-Selenium-Server" />
<!--Path to base url-->
<property name="baseURL" value="https://url-to-your-application"/>
<!--<Path to Selenium Tests-->
<property name="SeleniumTestsPath" value="C:\Path-to-SeleniumTests"/>
<!--Path to Selenium Results-->
<property name="SeleniumReports" value="C:\Path-to-Reports" />
下面的代码片段更新颠覆测试文件和调用FirstTestSuite文件的目标:
{C}
下面的代码片段初始化端口4444和端口4445上的第二个硒服务器上的第一个Selenium服务器并行执行的第一次和第二次的测试套件文件。 (注:用户扩展名的文件放置在测试套件文件位于同一文件夹中。)
请注意,Selenium服务器是使用PSEXEC使蚂蚁可以得到控制,回到初始化第二个服务器初始化。此外,一个15秒的睡眠时间,包括第一硒远程控制,才能有足够的时间来准备新的Firefox配置文件之前初始化第二硒远程控制。否则,它会抛出一个错误Firefox配置文件不能创建。
兴趣点<target name="FirstTestSuite">
<exec dir="${SeleniumServerPath}" executable="psexec.exe" spawn="true">
<arg line="-d -i java -jar
selenium-server.jar -port 4444 -singlewindow -htmlSuite *firefox ${baseURL}
${SeleniumTestsPath}\FirstTestSuite.html
${SeleniumReports}\Results_FirstTestSuite.html" />
</exec>
<sleep seconds="15" />
<antcall
target="SecondTestSuite"/>
</target>
<target name="SecondTestSuite">
<exec dir="${SeleniumServerPath}" executable="psexec.exe" spawn="true">
<arg line="-d -i java -jar
selenium-server.jar -port 4445 -singlewindow -htmlSuite *firefox ${baseURL}
${SeleniumTestsPath}\SecondTestSuite.html
${SeleniumReports}\Results_SecondTestSuite.html" />
</exec>
<sleep seconds="15" />
<antcall
target="ThirdTestSuite"/>
</target>
大型测试套件的文件可以被划分成较小的部分,以并行执行。这种方法有助于直到硒电网与HTML的客户端驱动程序并行执行Selenese测试用例。历史第一年12月,2009年:战后初期