如何测试发布请求并跟随capybara重定向?

我正在尝试用水豚和黄瓜测试一个post请求。 我无法访问页面并按下链接发送请求,因为它有一个确认对话框,我没有使用javascript工作,所以我试图使用post方法,然后测试它是否重定向到适当的url但是我得到了:

No response yet. Request a page first. (Rack::Test::Error) 

我的代码是:

 page.driver.post url page.driver.status_code.should be 302 follow_redirect! 

它一直很好,直到follow_redirect! 。 我试过了page.driver.follow_redirects! 但它也不起作用。

有帮助吗?

 Capybara::Rails::TestCase.class_eval do def post(url) page.driver.post url visit page.driver.response.location end end 

我建议你使用这个来解雇确认对话:

https://stackoverflow.com/a/2609244/560123

这样你就不会自己关心发布post了,而是相信你的应用程序代码来做post请求。

问候