如何在Selenium Grid2中运行Watir-Webdriver测试

时间:2014-03-20 11:04:26

标签: ruby watir-webdriver selenium-grid2

我可能会遗漏一些明显的东西,但这就是我的设置:

  1. CentOs 6.4 Headless VM(运行Selenium hub)
  2. CentOs 6.4无头虚拟机(运行节点)(与#1相同的虚拟机)
  3. Windows Xp Pro VM(运行节点)
  4. CentOs 6.4无头VM(运行Watir测试)
  5. 在1,2和4上,我运行命令rvm使用ruby-2.1.1,并应用puppet模块安装以下gem:  ['watir-webdriver','headless','bacon','selenium-webdriver','rspec','cucumber','test-unit','page-object','ci_reporter']

    然后,在#1上,我跑:

    java -Xms1024M -Xmx2048M -jar selenium-server-standalone-2.40.0.jar -role hub

    on#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://&lt;#1 VM DNS&gt;:4444 /

    我得到:

    您正在使用网格2.40.0 在官方的selenium wiki上寻求帮助:更多帮助 默认监控页面:console

    单击控制台链接,我看到以下连接的代理:

    id:http://&lt;#3 IP地址,Windows Xp Pro&gt;:5555,操作系统:XP

    我在Windows XP上运行旧命令(所以当集线器重新启动时,它似乎已连接)

    C:\ Documents and Settings \ user1&gt; java -jar selenium-server-standalone-2.40。 0.jar -role node -hubHost&lt;#1 VM DNS&gt; -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,rotating = false,takesScreenshot = true,version = 12}](org.openqa.grid.common.exception.GridException)(Selenium :: WebDriver ::错误::不明错误)

0 个答案:

没有答案