python selenium使用无头模式执行用例
什么是无头模式?
Headless Browser模式是浏览器的无界面状态,即在不打开浏览器界面的情况下使用浏览器。 该模式的好处如下:
1)可以加快web自动化测试的执行时间,对于web自动化测试,少了真实浏览器加载css,js以及渲染页面的工作。无界面测试要比真实浏览器快的多。
2)可以在无界面的服务器或CI上运行测试,减少了外界的干扰,使自动化测试更稳定。
3)可以更便捷的运行web自动化,编写爬虫、截图等。通常是由编程或者命令行来控制的
无头模式执行ui自动化,遇到用例失败,一样可以使用截图方法,进行截图
参考:https://blog.csdn.net/qq_32630565/article/details/118146747
测试无头模式比正常打开浏览器的执行速度
相同的用例,用例个数3个,分别正常打开浏览器执行和使用无头模式执行
正常打开浏览器执行时长:68.41s
第一次使用无头模式执行时长:54.58s
第二次使用无头模式执行时长:52.74s
第一次使用无头模式执行,比正常打开浏览器执行速度快了13.83s
实现无头模式配置:
options = webdriver.ChromeOptions()
options.add_argument("-headless")
driver = webdriver.Chrome(chrome_options=options)
使用无头模式,可能会出现的问题:
1、如果代码里面有使用js进行点击,会出现问题,因为无头模式,不判断js的渲染工作是否完成;无头模式执行用例,会出现点击失败等问题,导致用例执行失败
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)