2013-11-24 30 views
14

我正在開發一個使用Selenium的小型控制檯應用程序,我需要關閉它的所有日誌。我試過phantomJSDriver.setLogLevel(Level.OFF);但它不起作用。 我需要幫助。Java PhantomJSDriver禁用控制檯中的所有日誌

如何禁用所有使用Selenium和Phantomjs(GhostDriver)的控制檯應用程序中的日誌?

+0

沒有人知道? :( – user2598575

回答

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

這個解決方案對我來說不起作用 – Torben

18

這一個適合我。

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

我使用了相同的配置文件,但它不起作用,ghost驅動程序仍然在屏幕上打印所有的INFO日誌,這是我的配置行:phantomJSCaps.setCapability( PhantomJSDriverService.PHANTOMJS_GHOSTDRIVER_CLI_ARGS, 「--webdriver-記錄等級= NONE」); phantomJSCaps.setCapability(PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY, 「/ usr/lib中/ phantomjs/bin中/ phantomjs」); – tribbloid

+0

我發現這個在源代碼:*注意:這隻在與PhantomJSDriverService#PHANTOMJS_GHOSTDRIVER_PATH_PROPERTY一起使用時纔有用 *所以不應該這樣使用,但有沒有辦法設置PHANTOMJS_GHOSTDRIVER_PATH_PROPERTY? – tribbloid

+0

不知怎的,它對我沒有設置屬性,但我看到了方式設置它[這裏](https://github.com/detro/ghostdriver/issues/243)。你可以嘗試一下。 – Hery

3

望着org.openqa.selenium.phantomjs.PhanomJSDriverService的源文件在調試時,我發現,它實際上是忽視了ghostdriver本身記錄日誌級別。這樣做禁用散裝ghostdriver輸出:

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

似乎GhostDriver應該被更新時使用

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

到無法登錄。

相關問題