繁体   English   中英

通过Selenium Grid运行Selenium IDE测试

[英]Running Selenium IDE tests via Selenium Grid

我应该首先说,我是一个遗憾和痛苦的菜鸟 但我正试图改变它! 我不知道任何编程语言,但通过做足够的研究来获得我曾经做过的任何工作,设法“让事情发生”。

无论如何,我一直在使用Selenium IDE创建Selenium测试,我在通过Selenium Grid运行这些测试时遇到了一些麻烦。

我一直在将测试导出为JUnit 4(Webdriver)文件。 我在Ubuntu无头服务器上运行网格,在一台运行IE9和Firefox的Windows 7机器上运行我的遥控器,以及运行IE8和Chrome的Windows Vista机器。

我的目标是将我从Selenium IDE导出的测试作为JUnit 4(Webdriver)文件,并在我的两台Windows机器上并行运行它们。 我已经在我的Windows机器上编辑了我的主机文件,以识别名为“seleniumgrid”的Ubuntu服务器。 例如:

在Ubuntu服务器终端1: ant launch-hub

Win7 terminal1: ant -Dport = 5555 -Denvironment =“Windows上的IE9”-Dhost = Win7 -DhubURL = http:// seleniumgrid:4444 launch-remote-control

Win7终端2: ant -Dport = 5555 -Denvironment =“Windows上的Firefox”-Dhost = Win7 -DhubURL = http:// seleniumgrid:4444 launch-remote-control

Vista终端1 ant -Dport = 5555 -Denvironment =“Windows上的IE8”-Dhost = WinVista -DhubURL = http:// seleniumgrid:4444 launch-remote-control

Vista终端2: ant -Dport = 5555 -Denvironment =“Windows上的Chrome”-Dhost = WinVista -DhubURL = http:// seleniumgrid:4444 launch-remote-control

现在,从这里开始,我正在尝试启动从Selenium IDE导出的JUnit4(webdriver)文件来运行此配置。 该文件的名称标题为:Registration.java。

现在我要做什么来运行Registration.jar文件? 我似乎无法找到任何回答这个问题的文件,这让我相信我对这一切的运作方式有一个根本的误解......

请原谅,如果这个问题之前得到了回答。 谈到这个问题,我的术语很差。

非常感谢您花时间阅读本文,如果有答案,还需要更多答案。

布兰登

无需通过ant启动集线器和节点。 您可以从cmd运行它们:

java -jar selenium-server-standalone-2.21.0.jar -role hub - 将运行hub
java -jar selenium-server-standalone-2.21.0.jar -role node -hub http://seleniumgrid:4444/grid/register - 将运行节点

节点的默认端口是5555,因此对于第二个终端,您应指定与默认端口不同的端口,例如5556:

java -jar selenium-server-standalone-2.21.0.jar -role node -port 5556 -hub http://seleniumgrid:4444/grid/register

您还应为每个节点指定浏览器参数,例如:

-browser browserName=firefox,maxInstances=5,platform=WINDOWS

在JUnit测试中,您应该将RemoteWebDriverDesiredCapabilities RemoteWebDriver使用:

DesiredCapabilities capability = DesiredCapabilities.firefox();
WebDriver driver = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), capability);

对于并行执行,你应该另外编辑你的测试(对不起,不能使用jUnit,所以除了你可以在下面找到的链接之外,这里没有多大帮助。)

在Linux机器上的类路径中包含JUnit类文件,类文件,包括JUnit测试类,类文件所依赖的库:

export CLASSPATH=$JUNIT_HOME/junit.jar:/myproject/classes:/myproject/lib/something.jar

在Linux机器上调用Junit命令:

 java org.junit.runner.JUnitCore [test class name]

或者你可以用ant代替。

我建议从Linux上的集线器和一个带有一个浏览器的节点开始,不需要任何并行化,因此您将确保此部分正常工作。 下一步按顺序运行测试两个节点,然后尝试并行运行它们。

有关完整的教程,请阅读以下材料: 如何使用Ant运行JUnit从命令行激活Junit测试Grid2教程并行JUnit 4和Selenium (三部分)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM