java - 实时获取 Selenium 性能日志(Java、Kotlin)
问题描述
我正在寻找一种获取硒性能日志的方法。我遇到了一种使用以下代码获取日志条目的方法:
val loggingPrefs = LoggingPreferences()
loggingPrefs.enable(LogType.PERFORMANCE, Level.ALL)
val capabilities = DesiredCapabilities.chrome()
capabilities.setCapability("goog:loggingPrefs", loggingPrefs)
driver = RemoteWebDriver(driverService.url, capabilities)
...
val logEntries = driver.manage().logs().get(LogType.PERFORMANCE)
driver.close()
driver.quit()
logEntries.forEach {
print(it.message)
}
但我正在寻找一种实时获取这些日志的方法,例如流或某种回调方法,以便我可以在另一个线程或协程上实时处理它。我将不胜感激任何帮助。谢谢
解决方案
您可以执行以下操作:
@Test
public void logTest() {
new Thread(() -> {
while(true){
System.out.println("Logs from separate thread: " + driver.manage().logs().get(LogType.PERFORMANCE).getAll());
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}).start();
System.out.println("Main thread is now sleeping");
try {
Thread.sleep(30000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
推荐阅读
- javascript - dict.get() 用于 javascript 解析获取数据
- java - 在 Spring 中将子类配置为 Bean
- arrays - 将 for 循环转换为大写
- javascript - Blazor 从 URL 下载 Azure Blob
- c# - ASP.NET 核心项目启动时的 Serilog Blackholing 日志
- python - 在 Seaborn 的 FacetGrid 中如何将 x 轴的比例调整为可用数据的范围
- r - 将相同连接应用于 20 列(具有唯一输出变量)的最佳方法?
- sql - ORACLE 获取第一条记录
- python - 密码学python包中的Fernet解密错误
- reactjs - 将数据从 Firebase 实时数据库加载到 React 钩子组件