繁体   English   中英

如何在click_link / button之后使用黄瓜和水豚在铁轨中进行重定向?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM