Ich habe ein Problem mit Geckodriver (FF) in Java-Selen. Ich führe mehrere Test-Szenarien über TEST-NG parallele Ausführung (6+ Threads).Nicht erreichbarBrowserException firefox Treiber Selen-Java
Manchmal passiert, dass zu Beginn (Öffnen eines neuen Browsers) ich nicht erreichbarBrowserException. Also versuche ich es zu fangen, warte 100ms und versuche es erneut zu erstellen. es funktioniert, aber es hält den ersten fehlgeschlagenen Browser geöffnet, mit einer leeren Seite.
Problem ist, dass das erste Fenster geöffnet wurde, bevor es als Treiber initialisiert wurde, so dass es nicht durch driver.close() oder etwas (es ist null) geschlossen werden kann. Also muss ich sie manuell schließen.
Also, meine Frage ist, hat jemand solches Verhalten festgestellt? Wie kann ich solche Browser schließen, ohne die anderen Threads zu beeinflussen?
while(true) {
try {
setDriver(DriverFactory.createInstance(getBrowserInstance()));
break;
} catch (UnreachableBrowserException e) {
try {
Thread.sleep(100);
log.info("UnreachableBrowserException! Needed to wait for 100ms ");
removeDriver();
counter++;
} catch (Exception e1) {
log.info("Thread could not wait!");
e1.printStackTrace();
}
}
if(counter>100){
log.info("Was not able to create a browser session!");
break;
}
}
und der Teil des .createInstance:
final ProfilesIni profilesIni = new ProfilesIni();
System.setProperty("webdriver.gecko.driver", "drivers/geckodriver.exe");
System.setProperty(FirefoxDriver.SystemProperty.DRIVER_USE_MARIONETTE,"false");
firefoxProfile = new FirefoxProfile();
firefoxProfile.setAcceptUntrustedCertificates(true);
firefoxProfile.setAssumeUntrustedCertificateIssuer(false);
firefoxProfile.setPreference("app.update.auto", false);
firefoxProfile.setPreference("app.update.enabled", false);
firefoxProfile = profilesIni.getProfile("selenium_profile");
capabilities = DesiredCapabilities.firefox();
capabilities.setCapability(FirefoxDriver.PROFILE, firefoxProfile);
return new FirefoxDriver(capabilities); //Here it throws the exception.
Selen/Java/geckodriver Versionen sind die meisten neueren Datums. FF-Version ist leider 44.02 (kann nicht neuer bekommen). Ich wäre dankbar für irgendwelche Tipps/Hinweise.
Mit freundlichen Grüßen, Martin