Travis で受け入れテストを実行する協力者の 1 人であるフリー ソフトウェアを配置しようとしています。セレンを使用した受け入れテストを除いて、すべてが非常にうまくいきました。
ソフトウェアは Debian 6 で利用可能な gem バージョンのみを使用するため、これは難しい問題です。したがって、すべてが本当に時代遅れです。
より具体的に言えば、画面上のテキストを探している手順だけです。手順は次のとおりです。
page.should have_content(text)
私はすでにしようとしました:
- レンダリングされる前に要素を探している可能性があるため、待機を追加します。
- xpath を更新します。
- カピバラと競合している可能性があると読んだので、webrat を削除します。
- xvfb を使用してローカルでテストを実行します。
- Ubuntu Server 12.04 32 ビット (Travis バージョン) で VM を作成し、すべてをインストールして、xvfb でテストを実行します。
- Capybara を 1.1.1 から 1.1.4 に更新します。
しかし、問題は解決しません:
# features/step_definitions/web_steps.rb:107
Unable to find xpath "/html" (Capybara::ElementNotFound)
(eval):2:in `send'
(eval):2:in `text'
./features/step_definitions/web_steps.rb:110
./features/step_definitions/web_steps.rb:14:in `with_scope'
./features/step_definitions/web_steps.rb:108:in `/^(?:|I )should see "([^"]*)"(?: within "([^"]*)")?$/'
plugins/mezuro/features/repository.feature:101:in `And I should see "My Name"'
ビルドのリンクは次のとおりです: https://travis-ci.org/rafamanzo/mezuro-travis/builds/6231714
誰でも何か考えがありますか?残念ながら、これは gem のバージョンに関連しており、どうしても修正することはできません。
Googleで見つけたリンクは次のとおりです。
- https://groups.google.com/forum/#!msg/ruby-capybara/PDr7sZ124Vw/qLXqHXs0XdMJ
- https://github.com/rspec/rspec-rails/issues/406
どうもありがとうございました!