selenium – 使用chromedriver启用“保留日志”

希望用chromedriver启用“保留日志”.

https://sites.google.com/a/chromium.org/chromedriver/capabilities loggingPrefs指向谷歌代码存档页面,并不是很有帮助.

我的总体目标是在测试执行期间解析日志以查找错误,但是在页面导航中清除日志,这可能在测试期间多次发生.

我可以想到几个非理想的解决方法:

>解析每个页面导航的日志
>稍后登录文件并解析日志

两者都不理想,所以寻找最简单的方法.

这个问题类似于Enable “Preserve log” in chrome programmatically using chromedriver – 但在那里答案似乎是通过性能记录来记录重定向,而不是保留登录导航.

最佳答案 >您可以使用“loggingPrefs”创建浏览器实例.例如,在“SetUp” – 每个测试的方法中(根据一些单元测试框架):

from selenium.webdriver.common.desired_capabilities import DesiredCapabilities


desired = DesiredCapabilities.CHROME
desired["loggingPrefs"] = {"browser":"ALL"}
driver = webdriver.Chrome(desired_capabilities=desired)

>然后在每个操作之后,您可以运行以下命令(用于解决某些问题等):

logs = driver.get_log("browser")

for log in logs:

    print(str(log))

PS:Python中的这段代码.如果需要,您可以将所有信息保存在某个日志文件中,甚至可以保存在数据库中.

点赞