1

我想知道当前的用户代理。我已经将 selenium2 与红宝石一起使用

我在 env.rb 中设置了用户代理

  Capybara.default_driver = :selenium
  Capybara.register_driver :selenium do |app|

  profile = Selenium::WebDriver::Firefox::Profile.new
  profile['general.useragent.override'] = "Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_0 like Mac OS X; en-us) AppleWebKit/532.9 (KHTML, like Gecko) Version/4.0.5 Mobile/8A293 Safari/6531.22.7"

  Capybara::Selenium::Driver.new(app, {:browser => :firefox, :profile =>  profile})
end

当运行黄瓜测试用例打开时FireFox Browser,我没有看到 iphone。所以我想检查测试用例是否在 iphone 模式下运行(用户代理)。我怎样才能做到这一点?

4

3 回答 3

2
$ irb
2.3.3 :001 > require 'selenium-webdriver'
 => true 
2.3.3 :002 > d = Selenium::WebDriver.for(:chrome)
 => #<Selenium::WebDriver::Driver:0x..fcc762e239318ca30 browser=:chrome> 
2.3.3 :003 > d.execute_script('return navigator.userAgent')
 => "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.75 Safari/537.36" 
2.3.3 :004 > d.quit
 => nil 
2.3.3 :005 >
$
于 2016-12-15T17:49:54.873 回答
0

试试这个: -

page.driver.browser.browser

=> 

:firefox
于 2013-06-13T12:11:22.073 回答
0

如果您想检查您的浏览器是否以 Iphone 模式打开,因此您从测试用例中访问“ http://google.com ”,您将看到网页以移动模式打开。所以你可以证明你已经设置了正确的用户代理。

于 2013-06-13T13:33:42.657 回答