在capybara-webkitfunction规范期间,ActionCable无法连接
我使用Capybara-webkit在function规范中使用actioncable时遇到问题。 Actioncable在我的开发服务器上工作得很好,但是当测试javascript似乎无法连接时。
这是我的function规范期间运行的javascript控制台的输出
WebSocket connection to 'ws://127.0.0.1:32789/cable' failed: Unexpected response code: 200
这是我当时test.log
的输出
GET "/cable" for 127.0.0.1 at 2017-01-26 13:33:23 +0000 GET "/cable/" for 127.0.0.1 at 2017-01-26 13:33:23 +0000 Successfully upgraded to WebSocket (REQUEST_METHOD: GET, HTTP_CONNECTION: Upgrade, HTTP_UPGRADE: websocket)
它奇怪,因为它似乎根据日志连接正常,但javascript抛出错误并停止执行…另外200
如何错误代码? 200
状态代码总是意味着OK
?
提前致谢
Capybara使用的默认服务器是:webrick,它不支持测试ActionCable(每当Capybara 3.0发布时它都会改变)。 要将其切换为使用支持使用ActionCable进行测试的puma,您可以将Capybara.server = :puma
指定为Capybara配置的一部分。