2013-11-24 8 views

Antwort

-2
PhantomJSDriverService service = new PhantomJSDriverService.Builder() 
     .usingPhantomJSExecutable(new File(VariableClass.phantomjs_file_path)) 
     .withLogFile(null) 
     .build(); 
+0

Diese Lösung funktionierte nicht für mich – Torben

18

Dieser funktioniert für mich.

DesiredCapabilities dcap = new DesiredCapabilities(); 
String[] phantomArgs = new String[] { 
    "--webdriver-loglevel=NONE" 
}; 
dcap.setCapability(PhantomJSDriverService.PHANTOMJS_CLI_ARGS, phantomArgs); 
PhantomJSDriver phantomDriver = new PhantomJSDriver(dcap); 
+0

Ich benutze die gleiche Konfigurationsdatei, aber es funktioniert nicht, der Ghost-Treiber immer noch alle INFO-Protokoll auf dem Bildschirm drucken. Dies ist meine Konfig-Zeilen: phantomJSCaps.setCapability (PhantomJSDriverService.PHANTOMJS_GHOSTDRIVER_CLI_ARGS "--webdriver-loglevel = NONE"); phantomJSCaps.setCapability (PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY "/ usr/lib/PhantomJS/bin/PhantomJS"); – tribbloid

+0

fand ich diese im Quellcode: * HINWEIS: Dies ist nur in Verbindung mit PhantomJSDriverService # PHANTOMJS_GHOSTDRIVER_PATH_PROPERTY sinnvoll * So soll es nicht so verwendet werden Aber gibt es eine Möglichkeit, den PHANTOMJS_GHOSTDRIVER_PATH_PROPERTY zu setzen? – tribbloid

+0

Irgendwie funktioniert es bei mir ohne diese Eigenschaft zu setzen um es [hier] (https://github.com/detro/ghostdriver/issues/243) zu setzen Sei du kannst es ausprobieren. – Hery

3

Mit Blick auf die Quelldateien von org.openqa.selenium.phantomjs.PhanomJSDriverService beim Debuggen, entdeckte ich, dass es tatsächlich selbst dokumentiert Protokollebenen für ghostdriver ist zu ignorieren. Dadurch wird die Masse der ghostdriver Ausgang deaktiviert:

Logger.getLogger(PhantomJSDriverService.class.getName()).setLevel(Level.OFF); 

Es scheint, dass GhostDriver aktualisiert werden soll, wenn nicht log

phantomJSCaps.setCapability(PhantomJSDriverService.PHANTOMJS_GHOSTDRIVER_CLI_ARG‌​S, "--webdriver-loglevel=NONE"); 

verwendet wird.