2016-05-29 2 views
0

I "Capybara.current_session.driver" verwenden Selen Methoden zugreifen, wenn ich Treiber wie folgt definiert:Wie Selen Methoden zugreifen, wenn ich Capybara Poltergeist Treiber definiert (Ruby)

Capybara.default_driver = :selenium 

Aber wenn ich betreibe meine TC (Capybara + Selen) im kopflosen Modus sehe ich, dass TC aufgrund undefinierter Selen-Methoden versagt haben. So ist Frage, wie Selen Methoden zugreifen, wenn ich Capybara Poltergeist-Treiber wie folgt definiert:

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 

Antwort

0

Sie können nicht Selen Methoden verwenden, wenn Sie den Poltergeist-Treiber verwenden, sie sind nur verfügbar, wenn Sie Ihre Sitzung mit der Selen-Treiber. Deshalb ist es nicht empfehlenswert, bestimmte Methoden direkt bei den Treibern aufzurufen und stattdessen die von Capybara bereitgestellte API zu verwenden, damit Ihre Tests mit mehreren Treibern kompatibel bleiben. Welche selenspezifischen Methoden versuchen Sie zu verwenden?

Verwandte Themen