2012-05-14 8 views
9

私のRailsプロジェクト(Ubuntu 10.04システム)でCapybaraセレンを使用していますが、テストFirefoxをロードしているときにfirefoxをアップグレードしました。今はすべてのアドオンがインストールされており、初めて各アドオンを設定するまで待機します。セレンを使用しているときにfirefoxでアドオンを無効にする方法

セレンを起動するときにこれらのアドオンをすべて無効にする方法はありますか?

OR

セットアップする方法すべての私のアドオン、それは毎回のテストが実行されている私を要求しないように設定を保存するにはありますか?

更新

私はクロムを使用するように切り替える場合は、それはそれで正常に動作します。

Capybara.register_driver :selenium do |app| 
    Capybara::Selenium::Driver.new(app, :browser => :chrome) 
end 

Capybara.javascript_driver = :selenium 

私はFirefoxでテストしたいと思います。私は、セットアップFirefoxの下の「試験」のプロフィールをしましたし、次でそれを使用してみました:

動作しませんでした
Capybara.register_driver :selenium_firefox_custom do |app| 
    Capybara::Selenium::Driver.new(app, :browser => :firefox, :profile => "test") 
end 

Capybara.default_driver = :selenium_firefox_custom 

、それはまだ私のデフォルトのプロファイルをロードしようとしました。

私はカピバラのgitバージョンを使用しています。

capybara (1.1.2) 
    mime-types (>= 1.16) 
    nokogiri (>= 1.3.3) 
    rack (>= 1.0.0) 
    rack-test (>= 0.5.4) 
    selenium-webdriver (~> 2.0) 
    xpath (~> 0.1.4) 

私もCapybara.javascript_driver =を使用して試してみた:selenium_firefox_custom

+0

これは自動更新によるものですか?これは、[更新]の[詳細設定]タブで設定できます。最初の使用のために設定されている場合、私はそれを一度行う必要があると思いますか?または、初期状態のVMを使用していますか?そうでなければ、わからない!ごめんなさい! – Nashibukasan

+0

初めてのプラグインの設定です。セレンがブラウザを閉じるときに私はそれらを設定すると、私の設定はすべて忘れてしまって、私はこれをやり直さなければなりません。 – map7

+0

ブラウザの起動時にアドオンの互換性チェックを無効にしたいだけですか? –

答えて

3

カスタムプロファイルを使用してみてください、としかし、それを命名あなたが好き:

Capybara.register_driver :selenium_firefox_custom do |app| 
    Capybara::Selenium::Driver.new(app, :browser => :firefox, :profile => "custom") 
end 

Capybara.default_driver = :selenium_firefox_custom 

使用しているバージョンによって、APIが変更されている可能性がありますが、これはほとんど必要な作業です。

+0

'js:true'でjavascriptテストを使用している場合、このregister_driverをリッスンしませんが、これを回避する方法はありますか? – map7

+0

代わりに 'javascript_driver'を使ってください。 –

0

I Ubuntuを使用していないとして、私は私のWindows回避策を提案することができます。 セレンテストを実行するには、プラグインなしで2番目のFirefoxプロファイルを使用するのが適切な方法だと思います。

Windowsでは、「firefox.exe -ProfileManager -no-remote」をWindows Runに供給することで実現できます。

Ubuntuのためのテストされていない方法は[Alt] + [F2]とfirefox -ProfileManagerです。 これは、このリンクはあなたを助けることができるかもしれないすべてのFirefoxウィンドウを閉じて、多分

+0

私はfirefoxで 'テスト'のプロフィールを作って、すべてのアドオンを無効にしました。セレンのための私のレールプラグインにFirefox用の 'テスト'プロファイルを使用するように指示するにはどうすればよいですか? – map7

+0

答えは私のポストにあります。 :) –

4

あなたは維持する必要がプロファイルを作成したくなかった場合(例:ソース管理などにチェックイン)以下のように、あなたはその場でプロファイルを作成することができます。

Capybara.register_driver :selenium_firefox do |app| 
    profile = Selenium::WebDriver::Firefox::Profile.new 
    profile["extensions.update.enabled"] = false 
    profile["app.update.enabled"] = false 
    profile["app.update.auto"] = false 
    Capybara::Selenium::Driver.new(app, :browser => :firefox, :profile => profile) 
end 

Capybara.default_driver = :selenium_firefox 

をそのブラウザのバージョンや拡張機能をアップデートしないでその場でプロファイルを作成します。希望が助けてくれる!

関連する問題