Capybara::Poltergeist::StatusFailErrorが出たら
このエラーはローカルで
Capybara::Poltergeist::Driver.new(app, js_errors: true, timeout: 1)
のようにpoltergeistのtimeoutをすごく短くすると同様のエラーになる。
原因はassets compileに時間がかかっていてタイムアウトしている説らしい。
とりあえず、timeoutを伸ばして様子をみて、ダメなら先にassetファイルにアクセスするやテスト前にprecompileをするなどの方針を考える必要がある。
Capybara.register_driver :poltergeist do |app| Capybara::Poltergeist::Driver.new(app, js_errors: true, timeout: 60) end
Capybara::Poltergeist::StatusFailError · Issue #791 · teampoltergeist/poltergeist · GitHub
Capybara::Poltergeist::TimeoutErrorが稀に起こる問題の対応 - Qiita
Timeout::Error: execution expiredの場合
このエラーの場合はどのgemがというよりはテスト内にTimeout.timeout(5)
とかやっている場合がある。
自分の場合はajaxの処理が完了するまで待つみたいなやつがあった。