当前位置:  开发笔记 > 编程语言 > 正文

Capybara - 访问()不使用Firefox

如何解决《Capybara-访问()不使用Firefox》经验,为你挑选了0个好方法。

我是黄瓜和水豚的菜鸟,所以请耐心等待.

我正在尝试设置一个使用chrome和firefox作为测试平台的黄瓜项目.到目前为止,我已经通过测试来处理chrome,但不是在firefox上.

以下是代码段:

require 'uri'
require 'net/http'
require 'fileutils'
require 'selenium-webdriver'
require File.dirname(__FILE__) + '/throttle.rb'

#CAPYBARA
require 'capybara/cucumber'
require 'capybara/session'
#require 'capybara-webkit'

Capybara.register_driver :chrome do |app|
  Capybara::Selenium::Driver.new(app, :browser => :chrome)
end

Capybara.register_driver :selenium_firefox do |app|
  Capybara::Selenium::Driver.new(app, :browser => :firefox)
end

driver = case ENV['BROWSER']
when 'chrome'
  :chrome
when 'firefox'
  :selenium_firefox
when 'webkit'
  :webkit
when 'ie'
  :internet_explorer
else
  :chrome
end

Capybara.default_driver         = driver
Capybara.javascript_driver      = :selenium_firefox
Capybara.run_server             = false
Capybara.default_selector       = :css

然后,为了测试,我只是简单地访问了(" http://www.google.com ").

如果我将浏览器参数设置为chrome,则可以正常工作.黄瓜打开了chrome并自动输入"www.google.com",并且页面加载没有问题.

但是,我把它设置为firefox的那一刻:$ cucumber features/test.feature BROWSER = firefox,它没有用.它确实打开了firefox浏览器,但没有任何内容自动输入到URL框中.

所以,我必须在设置过程中遗漏一些我不知道的东西.我一直在网上寻找解决方案(需要'selenium webdriver',将'selenium webdriver'放入我的Gemfiles等),但到目前为止没有一个对我有用.

我在这里错过了什么?为什么visit()没有自动填充firefox的URL框,但它对chrome有用吗?

谢谢您的帮助.

推荐阅读
臭小子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有