2

REE で実行されている Rails 2.3 アプリケーションがあります。カピバラ 1.1.2、キュウリ 1.1.0、ポルターガイスト (0.6.0 と github の最新版の両方を使用)、および phantomJS 1.5.0 を使用しています。私の問題は、phantomJS に競合状態があり、キュウリのテストがランダムに失敗する原因になっていると考えていることです。きゅうりのテストは、Chrome で実行すると完全に機能するため、問題はポルターガイストまたはファントム JS にあると確信しています。PhantomJS でキュウリ テストを実行すると (CI サーバーで実行できるように)、次のようなエラーがランダムに発生します。

ページの Javascript コードで 1 つ以上のエラーが発生しました:

TypeError: 'undefined' is not a function

  http://static.ak.fbcdn.net/rsrc.php/v2/yd/r/c9z-2BUoufJ.js:75
  http://static.ak.fbcdn.net/rsrc.php/v2/yd/r/c9z-2BUoufJ.js:75
  http://static.ak.fbcdn.net/rsrc.php/v2/yd/r/c9z-2BUoufJ.js:9 in bound:(?) (Capybara::Poltergeist::JavascriptError)
./features/step_definitions/site_steps.rb:8:in `/I am on the home page/'
features/account_creation.feature:89:in `Given I am on the home page'

Failing Scenarios:
cucumber features/account_creation.feature:5 # Scenario: I should be able to start creating a resume without signing up

cucumber features/account_creation.feature:79 # シナリオ: 古いユーザー名とパスワードでログインできるはずです cucumber features/account_creation.feature:88 # シナリオ: ログインを記憶できるようにして、ブラウザを閉じたときに自動的にログインしています

ポルターガイストの Github ページに基づいて、env.rbバージョン 1.3 より前のラックの競合状態の問題を解決するためにこれを追加しました。

Capybara.server do |app, port|
  require 'rack/handler/thin'
  Thin::Logging.silent = true
  Thin::Server.new('0.0.0.0', port, app).start
end

しかし、これは私が言うことができる違いをもたらしませんでした. これがポルターガイストの問題またはphantomJSの問題であることを示唆しているだけであっても、どんな考えでも大歓迎です。次にそれについてどのように尋ねるべきかを知っています.

4

0 に答える 0