使用 Selenium 获取所有 Chrome 浏览器(包括 Service Worker 和扩展程序)日志

dpw*_*pwr 5 testing logging selenium selenium-chromedriver selenium-webdriver

我知道如何从 Selenium 中的浏览器获取日志,如下所示,但问题是我可以在浏览器控制台中看到的一些日志从未被 Selenium 捕获。这些丢失的日志来自扩展程序和服务工作线程。

有什么方法可以捕获扩展和服务人员的日志吗?我无法修改扩展或服务工作人员以使用备用日志记录机制,但任何其他解决方法将受到欢迎!

# Initialise the driver, enabling browser logging
options = webdriver.ChromeOptions()
...
capabilities = options.to_capabilities()
capabilities['goog:loggingPrefs'] = { 'browser': 'ALL' }
driver = webdriver.Chrome(desired_capabilities=capabilities)
driver.get('http://127.0.0.1')
# Continually log everything
while True:
    for entry in driver.get_log('browser'):
        print(entry)
Run Code Online (Sandbox Code Playgroud)

小智 1

这个库允许您获取浏览器的日志:https://github.com/MarketSquare/robotframework-seleniumtestability 我过去用它来检索浏览器日志,但我不确定扩展,你可以尝试一下。 在此输入图像描述