2016-05-29 3 views
0

私は次のようにドライバーを定義したとき、私はセレンのメソッドにアクセスするには、「Capybara.current_session.driver」を使用します。どのように私はカピバラポルターガイストドライバを定義した場合セレンメソッドにアクセスする(Ruby用)

Capybara.default_driver = :selenium 

しかし、私は私のTC(カピバラ+を実行しますセレニウム)のヘッドレスモードでは、定義されていないセレンメソッドのためにTCが失敗していることがわかります。 は、そこで問題、私は次のようにカピバラポルターガイストドライバを定義した場合セレンメソッドにアクセスする方法である:

require 'capybara/poltergeist' 
    Capybara.default_driver = :poltergeist 
    Capybara.javascript_driver = :poltergeist 
    Capybara.current_driver = :poltergeist 

    Capybara.register_driver :poltergeist do |app| 
     Capybara::Poltergeist::Driver.new(app, 
     :js_errors => false, 
     :phantomjs_options => ['--ignore-ssl-errors=yes'], 
     :phantomjs_logger => File.open("F:/Programming/VLoop/Project/28.05.2016/webapp/log/test_phantomjs.log", 'w+') 
    ) 
    end 

答えて

0

あなたはポルターガイストのドライバを使用しているときは、セレンメソッドを使用することはできませんあなたのセッションが使用しているとき、彼らはのみ使用可能ですセレンドライバー。なぜなら、ドライバで直接特定のメソッドを呼び出すことは推奨されず、代わりにCapybaraが提供するAPIを使用して、テストが複数のドライバと互換性を保つようにすることです。どのようなセレンの特定のメソッドを使用しようとしていますか?

関連する問題