Ruby on rails 没有与[GET]匹配的路由/&引用;(ActionController::RoutingError)
我有一个应用程序在此url上正确运行Ruby on rails 没有与[GET]匹配的路由/&引用;(ActionController::RoutingError),ruby-on-rails,cucumber,capybara,Ruby On Rails,Cucumber,Capybara,我有一个应用程序在此url上正确运行 http://workspace-username.c9users.io/?#/bookings 我的服务器在端口8081上运行 当我在线运行我的cumber时 visit http://workspace-username.c9users.io/?#/bookings 它给了我erorr: No route matches [GET] "/" (ActionController::RoutingError) 我只是感到惊讶,因为应用程序也在
http://workspace-username.c9users.io/?#/bookings
我的服务器在端口8081上运行
当我在线运行我的cumber
时
visit http://workspace-username.c9users.io/?#/bookings
它给了我erorr:
No route matches [GET] "/" (ActionController::RoutingError)
我只是感到惊讶,因为应用程序也在运行,但是capybara
无法获取它。
我也试过了
visit http://workspace-username.c9users.io:8081/?#/bookings
但是在访问外部页面时仍然得到相同的erorr,capybara需要使用racktest以外的web驱动程序,因为racktest只与rack应用程序对话。要测试网站,您需要使用另一个驱动程序,如selenium 如果只在测试中需要,可以将驱动程序设置为selenium
Capybara.current_driver = :selenium
或者在配置rspec时更改默认驱动程序
Capybara.default_driver = :selenium
你用的是什么司机?默认的racktest驱动程序无法连接到非本地URL,因此它会忽略主机名驱动程序是什么意思?Capybara支持多个驱动程序,如果要连接到远程站点,则需要使用racktest以外的驱动程序-我应该在何处添加此行?第一行可以放在测试文件本身中,因为您只希望它应用于这组测试。第二个通常放在Rspec configure块内的rails helper文件中。设置
default\u驱动程序
对我有用(current\u驱动程序
没有)。