【发布时间】:2019-04-03 19:59:24
【问题描述】:
我正在 Rails 项目中设置 Cucumber 测试。当我使用默认驱动程序时,一切正常;但是,当我尝试使用:selenium_chrome 驱动程序时,浏览器会尝试加载example.com 而不是本地Rails 服务器。知道我错过了什么吗?
我的步骤如下:
Before do |scenario|
Capybara.current_driver = :selenium_chrome
end
When(/^I visit the posts page$/) do
visit posts_url
end
当我运行这些功能时,我可以看到 rails 服务器启动了:
Using the default profile...
Feature: Posts
Capybara starting Puma...
* Version 3.12.0 , codename: Llamas in Pajamas
* Min threads: 0, max threads: 4
* Listening on tcp://127.0.0.1:62056
但是,弹出的 Chrome 窗口正在尝试访问 http://www.example.com/posts 而不是 http://127.0.0.1:62056/posts
我是否在某处遗漏了配置步骤?
在相关说明中:如果我想使用 Selenium 运行所有测试,我是否必须将 Capybara.current_driver 行放在 Before 块中?我尝试将其添加到features/support/env.rb,但它似乎没有任何效果。
我在 MacOS 10.14.4 上运行 Chrome 73.0.3683.86 和 Rails 5.2.2。
【问题讨论】:
标签: ruby-on-rails cucumber selenium-chromedriver capybara