ActionCable 在 capybara-webkit 功能规范期间未连接
ActionCable not connecting during capybara-webkit feature spec
我在使用 Capybara-webkit 的功能规范中使用 actioncable 时遇到问题。 Actioncable 在我的开发服务器上运行良好,但在测试时 javascript 似乎无法连接。
这是 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 配置的一部分。
我在使用 Capybara-webkit 的功能规范中使用 actioncable 时遇到问题。 Actioncable 在我的开发服务器上运行良好,但在测试时 javascript 似乎无法连接。
这是 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 配置的一部分。