如何使用 RSpec 测试 WebSockets(使用 Pusher)?

Posted

技术标签:

【中文标题】如何使用 RSpec 测试 WebSockets(使用 Pusher)?【英文标题】:How can I test WebSockets (using Pusher) with RSpec? 【发布时间】:2011-04-25 18:12:00 【问题描述】:

我正在寻找使用 RSpec 测试 WebSocket 推送事件的成功方法。我的应用程序目前使用 Pusher 应用程序,但欢迎提供与 WebSockets 相关的更广泛信息。

理想情况下,我想要一些简单的东西:

  parsed_body = JSON.parse(response.body)
  parsed_body["error"].should == "xyzError"

...我发现这是一种非常方便的测试 JSON 响应的方法。

提前真诚感谢。

【问题讨论】:

【参考方案1】:

WebSocket 服务器是远程服务。这是对远程服务的任何请求存根并模拟来自这些服务的响应的好方法。

【讨论】:

您能否举例说明如何对请求进行存根处理?【参考方案2】:

Tristan Dunn 推出了这款令人敬畏的宝石:https://github.com/tristandunn/pusher-fake

【讨论】:

以上是关于如何使用 RSpec 测试 WebSockets(使用 Pusher)?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 rspec 中运行单个测试?

Rspec - 如何测试邮件是不是使用正确的模板

如何使用 RSpec 测试电子邮件标头

如何使用 RSpec 测试 ActionCable 频道?

如何使用rails cucumber,rspec,capybara在视图(dhtml)中测试动态部分?

如何使用 RSpec 在 Rails 中测试:包含验证