14

我正在使用 Selenium 开发一个小型控制台应用程序,我需要关闭它的所有日志。

我已经尝试过phantomJSDriver.setLogLevel(Level.OFF);,但它不起作用。我需要帮助。

如何禁用使用 Selenium 和 Phantomjs (GhostDriver) 的控制台应用程序中的所有日志?

4

3 回答 3

22

这个对我有用。

DesiredCapabilities dcap = new DesiredCapabilities();
String[] phantomArgs = new  String[] {
    "--webdriver-loglevel=NONE"
};
dcap.setCapability(PhantomJSDriverService.PHANTOMJS_CLI_ARGS, phantomArgs);
PhantomJSDriver phantomDriver = new PhantomJSDriver(dcap);
于 2014-05-09T10:19:12.993 回答
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");  

用来。

于 2015-05-11T09:14:30.677 回答
-2
PhantomJSDriverService service = new PhantomJSDriverService.Builder()
        .usingPhantomJSExecutable(new File(VariableClass.phantomjs_file_path))
        .withLogFile(null)
        .build();
于 2014-03-07T13:48:56.470 回答