Java PhantomJSDriver禁用控制台中的所有日志

时间:2013-11-24 21:36:20

标签: java phantomjs ghostdriver

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

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

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

3 个答案:

答案 0 :(得分:21)

这个适合我。

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

答案 1 :(得分: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");  

被使用。

答案 2 :(得分:-2)

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