使用Capybara,Selenium,Ruby启动IE和Chrome浏览器

时间:2016-12-30 09:38:56

标签: ruby selenium rspec cucumber capybara

我是Cucumber和Capybara的新手。我正在尝试启动IE和Chrome浏览器。 我已经下载了两者的驱动程序并将它们复制到C盘中的Ruby文件夹中。 我在Env var中设置了Path。 以下是我的support / env.rb文件代码

require 'rubygems'
require 'capybara'
require 'capybara/dsl'
require 'capybara/rspec'
require 'selenium-webdriver'
require 'capybara/cucumber'

Capybara.run_server = false
#Set default driver as Selenium
Capybara.default_driver = :selenium
#Set default selector as css
Capybara.default_selector = :css

#Syncronization related settings
module Helpers
  def without_resynchronize
    page.driver.options[:resynchronize] = false
    yield
    page.driver.options[:resynchronize] = true
  end
end
Capybara.register_driver :selenium do |app|
  Capybara::Selenium::Driver.new(app, :browser => chrome)  #Getting error at this line
end
World(Capybara::DSL, Helpers)

我正在获得编译错误与评论一致如下。

  

方法调用,其中传递给方法的参数数量与方法参数的数量不匹配。

这是我的环境:

黄瓜(2.4.0)
selenium-webdriver(3.0.3)
水豚(2.11.0)
rspec(3.5.0)
Ruby 2.3

1 个答案:

答案 0 :(得分:0)

Capybara::Selenium::Driver.new(app, :browser => chrome)尝试将其更改为Capybara::Selenium::Driver.new(app, :browser => :chrome)