2011-07-03 7 views
0

私はサブドメインのレールを持っています3.0アプリ私はキュウリ/カピバラ/セレンでテストしようとしています。サブドメインを使用して、アプリケーションコントローラのbefore_filterで現在のサイトを設定します。アプリケーションコントローラでセレニウムがbefore_filtersを実行しないのはなぜですか?

@javascriptタグを使用するまで、すべてのテストはうまく動作します。私が@javascriptで実行したテストでは、before_filterは実行されないため、現在のサイトは決して設定されません。ページが読み込まれず、テストが失敗します。

適切な手順でsave_and_open_pageを使用すると、これらの同じテストが意図したとおりに機能し、予想されるページが生成されます。

私のbefore_filterがセレンの下で動作していない理由は誰にでも分かりますか?

答えて

0

フィルタが動作していないとの評価が間違っていました。私はデバッグにputsステートメントを使用していました。通常のキュウリ試験では、これらはキュウリを実行するコンソールウィンドウに移動します。 @javascriptでテストを実行するとアプリケーションが実際に起動するため、デバッグステートメントが目に見えない出力に送られていました。 putsステートメントをRAILS_DEFAULT_LOGGER.errorに置き換えてログファイルを処理することで、何が起きているのか見守ることができました。

+0

'Rails.logger.error'が少し正確です。 – sj26

関連する問題