微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ruby – 如何测试Sidekiq作业失败?

在例外情况下,sidekiq中的作业将被置于重试队列中.

因此,并且由于任务是异步运行的,MyWorker.perform_async(…)永远不会抛出任务代码生成的异常.

但是,在测试中,任务中发生的异常不会导致任务放入重试队列.异常冒出perform_async.

因此,在测试中发生的事情是运行代码时不可能发生的事情.

那么,什么是测试代码的最佳方法,这些代码会触发可能失败的作业并被置于重试队列中?

请注意,以下似乎对测试没有影响:
Sidekiq.default_worker_options = {:retry =>真正}

解决方法

它的设计很难,因为你不应该这样做.您不应该测试Sidekiq功能.测试您自己的代码,而不是其他库/框架提供的功能.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐