Java 是否要从日志中抑制EdgeDriver消息?
是否可以抑制从selenium边缘驱动程序创建的日志?具体而言,这些类型的日志条目: [17:00:32.066]-收听 我尝试过与Chrome、Firefox和IE驱动程序类似的方法,但都没有达到预期的效果 例如Java 是否要从日志中抑制EdgeDriver消息?,java,selenium-webdriver,microsoft-edge,Java,Selenium Webdriver,Microsoft Edge,是否可以抑制从selenium边缘驱动程序创建的日志?具体而言,这些类型的日志条目: [17:00:32.066]-收听 我尝试过与Chrome、Firefox和IE驱动程序类似的方法,但都没有达到预期的效果 例如 铬 System.setProperty("webdriver.chrome.args", "--disable-logging"); System.setProperty("webdriver.chrome.silentOutput", "true"); System.setPro
铬
System.setProperty("webdriver.chrome.args", "--disable-logging");
System.setProperty("webdriver.chrome.silentOutput", "true");
System.setProperty("webdriver.chrome.driver", "src\\drivers\\chromedriver.exe");
driver = new ChromeDriver();
火狐
System.setProperty(FirefoxDriver.SystemProperty.BROWSER_LOGFILE, "/dev/null");
System.setProperty("webdriver.gecko.driver", "src\\drivers\\geckodriver.exe");
driver = new FirefoxDriver();
即
在测试执行期间,要查看较少的日志,您只需将--silent参数传递给chromedriver服务器,如下所示
System.setProperty(“webdriver.chrome.silentLogging”,“true”)代码>
在edgedriver中,您可以在中尝试答案。它在“设置”时间内完全禁用日志
对于我来说,我使用EdgeDriverService
类下的SuppressInitialDiagnosticInformation
属性。该属性默认为false。通过将其设置为true,可以抑制诊断输出。我在C#中使用它,如下所示:
EdgeDriverService service = EdgeDriverService.CreateDefaultService();
service.SuppressInitialDiagnosticInformation = true;
service.HideCommandPromptWindow = true;
var driver = new EdgeDriver(service);
在chromedriver中的用法是相同的。有关更多信息,请参阅和。不幸的是,Java中的服务类似乎不存在这些属性。我的答案中的第一个和第二个方法在Java中有效吗?此外,你可以参考。它指出,我们需要从根本上弄清楚如何从Java绑定中禁用信息级日志,并将其切换为仅显示警告。它说这是可行的:java.util.logging.Logger.getLogger(“org.openqa.selenium”).setLevel(Level.OFF)代码>。我没有尝试您响应中的第二种方法。在我看来,它不是很干净,因为它应该是相当简单的。我已经有Chrome、IE和Firefox没有显示日志,我也已经有java.util.logging.Logger.getLogger(“org.openqa.selenium”).setLevel(Level.OFF)代码>在我的代码中。纯粹是边缘给我带来了麻烦。
EdgeDriverService service = EdgeDriverService.CreateDefaultService();
service.SuppressInitialDiagnosticInformation = true;
service.HideCommandPromptWindow = true;
var driver = new EdgeDriver(service);