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

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

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

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

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

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

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

解决方法

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

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...