首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ruby对象Gem -无法为提供的浏览器(RuntimeError)选择一个平台

Ruby对象Gem -无法为提供的浏览器(RuntimeError)选择一个平台
EN

Stack Overflow用户
提问于 2013-08-28 06:25:19
回答 3查看 2.4K关注 0票数 0

我在运行我的功能文件时遇到了这个错误。

无法为提供的浏览器(RuntimeError)选择平台

需要帮助,请。

这是密码;

代码语言:javascript
复制
class GooglePage
  include PageObject

  def self.visitor
    visit("http://www.google.com")
  end

end

env.rb

代码语言:javascript
复制
require 'selenium-webdriver'
require 'page-object'
require 'rubygems'
require 'page-object/page_factory'

World (PageObject::PageFactory)
@browser = Selenium::WebDriver.for :firefox


Step-Definitions

require_relative 'GooglePage'

Given(/^I am on the Google home page$/) do  
   visit(GooglePage)
  # visit('http://www.google.com')

   on(GooglePage).visitor
end
EN

回答 3

Stack Overflow用户

发布于 2013-09-27 13:55:30

这不管用:

代码语言:javascript
复制
visit(GooglePage)

因为您还没有在page_url中调用GooglePage (如下文4所示)

代码语言:javascript
复制
class GooglePage
  include PageObject

  page_url "http://www.google.com"    

  def self.visitor
    visit("http://www.google.com")
  end

end 
票数 0
EN

Stack Overflow用户

发布于 2014-10-14 18:31:06

@browser = Selenium::WebDriver.for :firefox一行移动到hooks.rb中的方法之前的

代码语言:javascript
复制
Before do
  @browser = Selenium::WebDriver.for :firefox
end

After do
  @browser.close
end
票数 0
EN

Stack Overflow用户

发布于 2015-03-13 07:12:33

如果你让你的rake文件传递标签、浏览器和URL,例如rake my_task BROWSER=chrome URL=http://google.com.au

钩子将检查浏览器是否是chrome,然后将使用特定的。但是如何在PageObject中传递URL呢?

目前,我从钩子中得到了ff:

代码语言:javascript
复制
when "chrome" then
    caps = Selenium::WebDriver::Remote::Capabilities.chrome
    caps.version = "40.0.2214.115 m"
    caps.native_events = false
    caps.javascript_enabled= true

    # This is for increasing the default timeout to 180
    client = Selenium::WebDriver::Remote::Http::Default.new
    client.timeout = 180

    browser = Selenium::WebDriver.for :chrome
    browser.manage.window.maximize 


end

Before do
browser.cookies.clear
@browser = browser
end

After do
unless ENV["BROWSER"].eql? "ie"
    browser.close
    sleep 2
end
end

然后,在我的HomePage页面对象上,我得到了ff:

代码语言:javascript
复制
class HomePage
include PageObject

page_url("#{ENV['URL']}")

#opens the url defined in ENV['URL']
def goto_homepage
    visit(HomePage)
end

end

使用Watir,URL就被打开了,所以在Selenium中尝试一下,它就不能工作了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18480753

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档