[英]How to follow a redirect after click_link/button with cucumber and capybara in rails?
我正在尝试为黄瓜和水豚的新rails 3应用程序设置集成/验收测试。 (我最初计划使用webrat,但它似乎不支持rails 3,所以我最终使用了capybara)
我正在尝试进行基本的登录测试:
Feature: Login user
In order to access the non-public parts of the site,
as a user,
I want to login to the site
Scenario: login with valid credentials
Given I am on the login page
When I fill in "Email" with "bender@planetexpress.com"
And I fill in "Password" with "pass"
And I press "Login"
Then I should be on the users home page
And I should see "Login successful"
现在的问题是,登录表单将我发送到/user_session
,然后将我重定向到用户home /home
。 黄瓜不遵循重定向导致Then I should be on the users home page
行失败。
我如何告诉黄瓜/水豚遵循重定向,以便在按下链接按钮后我在右页?
似乎有一个follow_redirect!
我正在使用的rack_test驱动程序中的方法,但它是私有的,我不知道如何调用该功能。
提前致谢,
西蒙
Capybara自动跟随重定向。 别的东西坏了。
将其添加到您的步骤中:
When /^I dump.* the response$/ do
puts body
end
然后,当您的测试行为不端时,您可以添加“我将响应转储”到您的步骤,并查看重定向或其他任何内容。
可能有用的东西是切换语句的顺序:
Then I should see "Login successful"
And I should be on the users home page
然后在检查页面文本后检查当前页面。 黄瓜测试确实需要大量调试,祝你好运!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.