如何使用 Selenium 清除控制台错误
How to clear console errors using Selenium
我正在使用此代码来检测在使用 ChromeDriver 执行自动 UI 测试时记录的控制台错误:
public static List<LogEntry> getJavaScriptErrors(Level level) {
return getDriver().manage().logs().get(LogType.BROWSER).filter(level);
}
在执行步骤之前,我想清除控制台日志,这样我只能看到由我要测试的特定操作引起的错误,而不是测试设置期间的早期错误。
如何明确清除日志中的错误?
首先,如果您想在 .log 文件中查看日志,您可以为其设置 属性。
System.setProperty("webdriver.chrome.logfile", "\path\chromeDriver.log");
之后,您可以使用以下代码将控制台日志记录设置为静默。
System.setProperty("webdriver.chrome.silentOutput", "true");
我创建了这个方法来清除浏览器中的控制台(前 3 行)并清除返回到 Selenium 的日志(最后一行)。
public void clearConsoleErrors(){
JavascriptExecutor js = (JavascriptExecutor)getDriver();
String script = "console.clear();";
js.executeScript(script);
getDriver().manage().logs().get(LogType.BROWSER).filter(Level.ALL)
}
我正在使用此代码来检测在使用 ChromeDriver 执行自动 UI 测试时记录的控制台错误:
public static List<LogEntry> getJavaScriptErrors(Level level) {
return getDriver().manage().logs().get(LogType.BROWSER).filter(level);
}
在执行步骤之前,我想清除控制台日志,这样我只能看到由我要测试的特定操作引起的错误,而不是测试设置期间的早期错误。
如何明确清除日志中的错误?
首先,如果您想在 .log 文件中查看日志,您可以为其设置 属性。
System.setProperty("webdriver.chrome.logfile", "\path\chromeDriver.log");
之后,您可以使用以下代码将控制台日志记录设置为静默。
System.setProperty("webdriver.chrome.silentOutput", "true");
我创建了这个方法来清除浏览器中的控制台(前 3 行)并清除返回到 Selenium 的日志(最后一行)。
public void clearConsoleErrors(){
JavascriptExecutor js = (JavascriptExecutor)getDriver();
String script = "console.clear();";
js.executeScript(script);
getDriver().manage().logs().get(LogType.BROWSER).filter(Level.ALL)
}