【playwright】将chromium浏览器更改为默认打开chrome;多浏览器时,想要使用chrome

目录

问题

解决方案


问题

在实习期间写case时,老大要求这个自动化项目要满足多浏览器执行,原本是很简单的在pytest.ini文件中修改如下即可:

运行时,问题来了,在chromium浏览器打开哔哩哔哩时,直播画面不可见,显示chromium版本过低,建议使用chrome.这个时候,小伙伴可能会认为,还是很简单呀,我pytest.ini文件中加上

--browser-channel=chrome不就可以了。no,可以自行尝试,这种可能会导致另外两个浏览器无法执行,因为一般情况下,你的pytest_playwright的插件中browser_type_launch_args方法,是如下实现:

我们解读这里的代码逻辑,意思是如果--browser-channel有值,则将浏览器通道channel修改为--browser-channel中设置的值,这样一来就会导致,Firefox浏览器和webkit浏览器的通道也要修改为chrome,而这两个浏览器根本就没有这个通道,就会报错啦~


解决方案

我在上面的browser_type_launch_args方法中,修修改改,怎么都没法把chrome设置为只对chromium生效,于是就有了下面的思路:

我想着反正这个项目都得用chrome,而不用chromium,那还不如直接在插件中把他修改为chromium默认走chrome通道。把pytest_playwright插件中的代码,通读了一遍,找到了打开浏览器所在的方法:

上述标红是我新增的方法,记得把这里的代码注释掉:

以上修改后,我们在pytest.ini中,直接这样写:

就可以打开三个浏览器啦,并且当中chromium是chrome浏览器~

相关推荐
代码的乐趣3 小时前
支持selenium的chrome driver更新到133.0.6943.126
chrome·python·selenium
G佳伟4 小时前
【亲测有效】百度Ueditor富文本编辑器添加插入视频、视频不显示、和插入视频后二次编辑视频标签不显示,显示成img标签,二次保存视频被替换问题,解决方案
chrome·百度·音视频
微wx笑1 天前
chrome扩展程序如何实现国际化
前端·chrome
CUIYD_19891 天前
Chrome 浏览器(版本号49之后)‌解决跨域问题
前端·chrome
Dontla2 天前
华为昇腾服务器(固件版本查询、驱动版本查询、CANN版本查询)
运维·服务器·chrome
JsenLong2 天前
ubuntu 守护进程
linux·chrome·ubuntu
前端大全2 天前
Chrome 推出全新的 DOM API,彻底革新 DOM 操作!
前端·chrome
林的快手2 天前
CSS文本属性
前端·javascript·css·chrome·node.js·css3·html5
码农君莫笑2 天前
Linux系统上同时打印到物理打印机并生成PDF副本方法研究
linux·前端·chrome·打印·信管通
代码轨迹3 天前
青龙面板运行selenium启动Chrome报错
chrome·python·selenium