我可能会遗漏一些明显的东西,但这里是我设置的:
CentOs 6.4无头VM(运行Selenium hub)
CentOs 6.4无头虚拟机(运行节点)(与#1相同的虚拟机)
Windows Xp Pro VM(运行节点)
CentOs 6.4无头VM(运行Watir测试)
在1,2和4上,我运行命令rvm使用ruby-2.1.1,并应用puppet模块安装以下宝石:['watir-webdriver','headless','bacon','selenium-webdriver ','rspec','黄瓜','测试单位','页面对象','ci_reporter']
然后,在#1上,我运行:
java -Xms1024M -Xmx2048M -jar selenium-server-standalone-2.40.0.jar -role hub
在#2上,(与#1机器相同,我运行:
java -jar selenium-server-standalone-2.40.0.jar -role node -host <#1 VM DNS> -port 5555 -hub http://<#1VM DNS>:4444/grid/register
或者命令:
java -jar selenium-server-standalone-2.40.0.jar -role node -hub http://<#1 VM DNS>:4444/grid/register -maxSession 20 -port 5555
在两种情况下,我没有得到集线器上的指示,该节点确实已连接,或者在已注册到集线器的节点上,我在该节点上获得的最后一行是:
06:20:03.931 INFO - Starting auto register thread. Will try to register every 5000 ms. 06:20:03.932 INFO - Registering the node to hub :http://<#1 VM DNS>:4444/grid/register
IMO,"注册"表示正在进行中,尚未完成.无论如何,所以我打开了中心控制台@
http:// <#1 VM DNS>:4444 /
我得到:
你正在使用网格2.40.0在官方的selenium wiki上找到帮助:更多帮助这里默认监控页面:console
单击Console链接,我看到以下Proxies连接:
id:http:// <#3 IP地址,Windows XP专业版>:5555,操作系统:XP
我在Windows XP上运行了旧命令(所以当集线器重新启动时,它似乎已连接)
C:\ Documents and Settings\user1> java -jar selenium-server-standalone-2.40.0.jar -role node -hubHost <#1 VM DNS> -hubPort 4444
现在,我需要在ruby/Watir中针对windows节点运行firefox的简单测试.
因为我无法对无头VM#1或#4运行浏览器测试,除非我安装并运行了xvfb帧缓冲区,对吧?
现在我跑的时候
require "watir-webdriver" caps = Selenium::WebDriver::Remote::Capabilities.firefox caps.version = 12 caps.platform = :WINDOWS caps[:name] = "Watir WebDriver" browser = Watir::Browser.new( :remote, :url => "http://<#1 VM DNS>:4444/wd/hub", :desired_capabilities => caps) browser.goto "http://www.google.com" p browser.title == "Google" browser.close
我收到错误:
[remote server] org.openqa.grid.web.servlet.handler.RequestHandler(RequestHandler.java):114:in`process':转发新会话时出错:Capabilities [{platform = WINDOWS,javascriptEnabled = true,cssSelectorsEnabled = true,browserName = firefox,nativeEvents = false,name = Watir WebDriver,rotate = false,takesScreenshot = true,version = 12}](org.openqa.grid.common.exception.GridException)(Selenium :: WebDriver :: Error ::未知错误)