Ответ 1
Взгляните на драгоценный камень rspec-sidekiq, который я создал, чтобы сделать именно это (тестирование рабочих Sidekiq).
Большая часть моего приложения опирается на фоновые задания для обработки пользовательских веб-сайтов, поэтому мне нужно написать несколько тестов, чтобы их охватить.
Первый вопрос заключается в том, как проверить код в рабочем классе Sidekiq, например app/workers/some_worker.rb
class SomeWorker
include Sidekiq::Worker
def perform(model_id)
...
end
end
Во-вторых, как я могу закодировать код, например следующие: мне не нужно фактически запускать рабочих и замедлять мои тесты?
response = HTTParty.get("http://users-site.com", timeout: 30)
Взгляните на драгоценный камень rspec-sidekiq, который я создал, чтобы сделать именно это (тестирование рабочих Sidekiq).
Прочтите страницу тестирования в вики Sidekiq.