我的最终目标是让Selenium在Jenkins内部运行。 我的Jenkins安装在Ubuntu虚拟机中运行。
在jenkins selenium设置的一些问题(源自jenkins运行的用户的权限)之后,我切换到从命令行运行命令以查看发生了什么。我的目标是让测试在这里运行,然后让它在Jenkins中运行。
这是我目前正在使用和查看的命令和响应。
resn@resn-VirtualBox:~$ sudo java -jar /var/lib/jenkins/tools/selenium/selenium-server.jar -htmlSuite *firefox http://google.com "/var/lib/jenkins/jobs/Selenium setup test/workspace/tests/test-testsuite.html" "/var/lib/jenkins/jobs/Selenium setup test/workspace/results/results.html" -log=/tmp/selenium.log -debug=true -firefoxProfileTemplate "/home/resn/.mozilla/firefox/6f2um01h.Selenium"
23/08/2011 11:19:51 AM org.openqa.grid.selenium.GridLauncher main
INFO: Launching a standalone server
11:19:52.172 INFO - Java: Sun Microsystems Inc. 19.0-b09
11:19:52.173 INFO - OS: Linux 2.6.35-28-generic i386
11:19:52.223 INFO - v2.4.0, with Core v2.4.0. Built from revision 13337
11:19:52.488 INFO - RemoteWebDriver instances should connect to: http://127.0.0.1:4444/wd/hub
11:19:52.491 INFO - Version Jetty/5.1.x
11:19:52.491 INFO - Started HttpContext[/selenium-server/driver,/selenium-server/driver]
11:19:52.501 INFO - Started HttpContext[/selenium-server,/selenium-server]
11:19:52.501 INFO - Started HttpContext[/,/]
11:19:52.520 INFO - Started org.openqa.jetty.jetty.servlet.ServletHandler@15b7986
11:19:52.521 INFO - Started HttpContext[/wd,/wd]
11:19:52.530 INFO - Started SocketListener on 0.0.0.0:4444
11:19:52.530 INFO - Started org.openqa.jetty.jetty.Server@54172f
11:19:53.379 INFO - Preparing Firefox profile...
11:19:55.949 INFO - Launching Firefox...
Ubuntu虚拟机不是无头实例,所以AFAIK我不需要安装xvfb(正如在同一主题的一些博客文章中提到的那样)。
在本期之前,我遇到了Firefox配置文件的问题,我使用我在这里回答的方法修复了这个问题:Jenkins can't launch selenium tests (Timed out waiting for profile to be created)
使用“应用程序”菜单中的快捷方式启动Firefox时,只需在命令行输入“firefox”即可打开Firefox。
我尝试过以多种方式添加Firefox应用程序的完整路径:
在命令中,没有空格'...“firefox / usr / lib / firefox-3.6.20 / firefox.sh ...'导致
“看到HTML套件异常: java.lang.RuntimeException:不支持浏览器:* firefox / usr / lib / firefox-3.6.20 / firefox.sh
支持的浏览器包括: *火狐“
此外,由于进程只是挂起,并且实际上没有失败,因此不会创建日志文件(/tmp/selenium.log)。
非常欢迎任何想法,提示或调试建议!
答案 0 :(得分:4)
问题似乎是在无头环境中运行时。如果您没有窗口来渲染浏览器,它将会挂起。你可以通过在你的机器上粘贴相同的命令来测试这个,而是做ssh -X me@server.com
我找到了有关您可以采取哪些措施来解决此问题的文档: http://www.alittlemadness.com/2008/03/05/running-selenium-headless/
答案 1 :(得分:3)
我也有同样的问题,我找不到任何解决方案:
我做了什么,是尝试手动运行firefox(设置DISPLAY后) - 我得到了错误:
D-Bus库似乎设置不正确;无法读取机器uuid:无法打开/ var / lib / dbus / machine-id
我不知道这个问题是如何突然发生的,但修复相对简单:
dbus-uuidgen>的/ var / lib中/ DBUS /机器ID