Capybara不遵循308重定向

时间:2018-06-07 12:32:17

标签: capybara capybara-webkit

我正在使用Cucumber和Capybara进行一些验收测试。

根据我的理解,capybara should follow redirects,正如我所看到的那样,通常是......

最近我们对基础设施进行了一些更改。此更改创建308重定向代码,而不是先前生成的301.使用此308代码,似乎不再遵循它的水豚。

在进行测试时,我可以清楚地看到它没有:

expected to find text "Welcome" in "308 Permanent Redirect nginx/1.13.8" (RSpec::Expectations::ExpectationNotMetError)

我应该提到过去(使用301重定向)完全相同的测试。

这是水豚虫吗?如果没有,我错过了什么?

1 个答案:

答案 0 :(得分:1)

这不是capybara没有跟随308,而是您与capybara一起使用的驱动程序不遵循308s。该驱动程序是capybara-webkit,并且根据您构建的QtWebkit的版本大致相当于一个5-9岁的浏览器,它并不真正支持现代浏览器所做的许多事情。如果您使用selenium和无头chrome作为至少部分测试的驱动程序(那些需要更新浏览器功能的驱动程序),那么您将在浏览器支持方面遇到更少的问题