创建新驱动程序时无法将配置文件传递给Capybara

时间:2016-12-01 03:05:51

标签: selenium-webdriver capybara

我使用带有版本的ruby / cucumber / capybara框架:

    protected void Application_Start(object sender, EventArgs e)
    {
        RegisterRoutes(RouteTable.Routes);
    }
    void RegisterRoutes(RouteCollection routes)
    {
        routes.MapPageRoute("",
              "a-page", "~/index.aspx?qs=a-page");
    }

我尝试注册一个新的驱动程序,其中一些设置在配置文件中传递给了水豚。我的代码如下所示:

capybara (2.10.1)
selenium-webdriver (3.0.0)
ruby 2.3.1p112 (2016-04-26 revision 54768) [x64-mingw32]

我也尝试过:

Capybara.register_driver :debug do |app|  
  profile = Selenium::WebDriver::Firefox::Profile.new
  Capybara::Selenium::Driver.new(app, :browser => :firefox, :profile => profile)
end

然后我只使用以下内容来选择该驱动程序:

Capybara::Selenium::Driver.new(app, :profile => profile)

但在这两种情况下,当我尝试运行任何测试时,都会出现以下错误:

Capybara.default_driver = :debug

知道问题可能是什么?以及如何修改它?

1 个答案:

答案 0 :(得分:0)

Firefox geleodriver的Ruby绑定尚不支持Firefox配置文件,这是Firefox 48+所需要的。观看此问题(希望很快)决议:https://github.com/SeleniumHQ/selenium/issues/2933