【发布时间】:2021-04-27 03:50:05
【问题描述】:
我能找到的大部分相关内容都是关于测试后台作业是否安排在 this 问题上。
但是,我需要编写一个实际上等待后台作业执行的功能测试,所以我们说:
BatchWorker.perform_in(30.minutes)
我需要编写一个功能测试,根据将在 30 分钟内执行的作业的结果做出一些断言。该怎么做?
更新
只是为了澄清......我不需要测试作业是否入队,例如使用 rspec-sidekiq gem 你可以做类似的事情
Awesomejob.perform_in 30.minutes, 'Awesome', true
# test with...
expect(AwesomeJob).to have_enqueued_sidekiq_job('Awesome', true).in(30.minutes)
这不是我需要的……我需要在作业执行后在页面上用水豚做出断言。
【问题讨论】:
标签: ruby-on-rails rspec capybara sidekiq