2014-02-14 72 views
0

我已经在我的Windows系统上完成了一个测试用例,现在我需要运行相同的测试用例文件到Ubuntu Linux服务器(没有桌面)。如何在Linux中运行selenium webdriver测试用例项目(在java中完成)

从这Link tutorials,我应该安装xvfb。我安装了&测试。它在我的服务器上成功运行。

现在我的困惑是下一步是什么? 即我应该怎么做才能在我的Linux机器上运行相同的测试用例?这个测试用例是通过eclipse在本地windows机器上使用selenium(java)作为Maven项目制作的

+0

请任何人,帮帮我。如果你不明白我的问题,那么只是戳我。我会尝试以其他方式告诉你 –

+0

你想测试什么?从Windows Web浏览器中调用您的Linux机器上运行的Web应用程序的行为?其实xvfb只有在你想在无头环境下启动浏览器时才需要。 – Jcs

+0

@Jcs我想运行一个java测试用例文件。我在eclipse中用硒创建了一个Junit文件。它会打开一个firefox&perfomrs点击表单进行测试。从eclipse中,我用来运行这个文件,如“Rightclick on file”>>选择“run as Junit”。我想在我的ubuntu服务器上运行这个相同的文件。我已将java,xvfb,selenuim安装到我的服务器中。 –

回答

0

快速和肮脏的

Linux服务器和JDK的安装Maven。然后将项目的源代码复制到linux服务器上(例如,复制源存储库或压缩目录并scp)。兼营:

mvn clean test 

复杂一点,但更好的

使用硒电网。网格允许硒从远程节点启动浏览器。

首先从Google Code download page下载硒服务器。启动Windows机器上的轮毂:

java -jar selenium-server-standalone-2.39.0.jar -role hub 

转到http://localhost:4444/grid/console检查集线器已正常启动。

然后在Linux服务器上启动节点:

java -jar selenium-server-standalone-2.7.0.jar -role webdriver -hub http://<hub_ip_or_hostname>:4444/grid/register -port 5556 -browser browserName=firefox 

在你的测试代码,实例化与Firefox的能力RemoteWebDriver对象。远程web驱动程序对象将自动联系集线器以查找具有所需功能的远程节点(此处只有一个节点)。然后集线器会将硒命令转发到远程节点。

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

然后,你可以如你所愿(在Linux,IE浏览器在Windows,Safari浏览器火狐在iOS ...)添加到集线器的多个节点,采用不同的平台和浏览器。官方文档是here

+0

感谢您的时间和答复。回复您的答案可能需要1周的时间。因为我的办公室从今天起关闭了几天。我没有测试就接受了你的答案。我接受,因为它听起来不错,你花时间给我。 –

0

为此,我使用了包含所有X.org依赖关系的桌面Ubuntu。 另外我安装了XtightVNC桌面。 之后,我添加使用VNC服务器打开新的屏幕。

最后我安装了Hudson(你可以使用Jenkins)并在我的启动脚本中添加了env DISPLAY =:%monitorNumber%(例如:2)。该命令将执行重定向到我们的VNC监视器。

我建议你先安装X.org的依赖关系,然后做我所做的事情。 但我不记得我设置的确切步骤,很久很久以前。

+0

我想运行一个java测试用例文件。我在eclipse中用selenium创建了一个Junit测试用例文件。它会打开一个firefox&perfomrs点击表单进行测试。从eclipse中,我用来运行这个文件,如“Rightclick on file”>>选择“run as Junit”。我想在我的ubuntu服务器上运行这个相同的文件。我已将java,xvfb,selenuim安装到我的服务器中。 –

相关问题