2016-11-28 3 views
1

Ich bin neu in Java und Selenium und habe dieses Problem, wo ich die Browsersitzung erneut verwenden muss.Selenium Java Reuse Browser Sitzung

Ich habe gesucht, konnte aber keine gute Lösung dafür finden. Gibt es eine Möglichkeit, Firefox-Sitzung in Selenium mit Java wiederzuverwenden?

Antwort

0

Sie haben zwei Möglichkeiten:

  1. Cookies speichern und sie

    bei jeder Erstellung des Treibers abrufen
    driver = new FirefoxDriver(); 
    for(Cookie cookie : allCookies) 
    { 
        driver.manage().addCookie(cookie); 
    } 
    
  2. Ihrem Browser Profil lokal speichern und dann laden

    DesiredCapabilities capabilities = DesiredCapabilities.firefox(); 
    File profileDirectory = new File("c://mach//lib//prof"); 
    FirefoxProfile profile = new FirefoxProfile(profileDirectory); 
    capabilities.setCapability(FirefoxDriver.PROFILE, profile); 
    WebDriver driver = new FirefoxDriver(capabilities); 
    
+0

Tx für die Hilfe aber, wie abo ut Firefox-Profil speichern oder Cookies speichern? Ich kann das nicht erreichen. – Brito

+0

Haben Sie versucht, die Cookies als Set zu speichern: 'Set cookies = driver.manage(). GetCookies();' und dann abrufen? Firefox speichert Profile in einem tmp-Ordner, der dann beim Herunterfahren gelöscht wird, aber Sie können trotzdem in diesen tmp-Ordner gehen und das Profil in einer Datei speichern. Referenz hier: http://stackoverflow.com/questions/30435749/python-selenium-firefox-cant-start-firefox-with-specified-profile-path/33350778#33350778. Alternativ können Sie dies tun: http://stackoverflow.com/questions/13033071/save-firefox-profile-generated-by-selenuim-web-driver –

+0

Wenn ich den Code oben für die Cookies versuche, bekomme ich ther Fehler " allCookies kann nicht in eine Variable aufgelöst werden "keine Idee? – Brito

Verwandte Themen