RSPEC,私人酒吧和救援的验收测试

时间:2013-11-05 05:40:27

标签: ruby-on-rails rspec resque private-pub

我正在寻找一些关于为使用Ryan Bates的private_pub gem(https://github.com/ryanb/private_pub)和Resque的流程编写验收测试的指导。

在我的控制器中,我有一个执行操作,在Resque中排队文件生成过程,然后发出一个AJAX请求以显示“等待”模式窗口。模态窗口包含用于订阅private_pub通道的javascript,并等待该通道上的消息。在Resque工作器中完成文件生成过程后,带有新生成的文件名的消息将被推送到private_pub。模态中的javascript接收消息并使用文件名在浏览器中启动文件下载。

我正在寻找有关在此过程中运行测试的技术的建议。我已经考虑过模拟private_pub服务器(不知道如何在经过多次谷歌搜索后完成此操作),以便它只返回一个预先存档的文件。基本上我认为我需要一种方法来锻炼我的工作流程,而无需在我的测试环境中运行private_pub服务器和整个Resque基础设施。

1 个答案:

答案 0 :(得分:0)

我建议删除对Resque工作人员的调用,并简单地返回您希望返回的内容。然后在单独的测试中测试Resque工作器代码。

如果您的目标是专门测试模态窗口的功能,您可以编写一个测试,只需调用Resque工作器并使用Capybara来确定模态是否显示。在此示例中,您将想要存根Resque调用 - 只需在找到模态窗口后结束测试。