【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浏览器~

相关推荐
enjoy编程12 小时前
playwright学习-I
typescript·vue·nodejs·1024程序员节·playwright
深蓝电商API12 小时前
Playwright+多模态大模型:让AI自己“看”页面并决策
人工智能·爬虫·playwright
中屹指纹浏览器svip1 天前
中屹指纹浏览器和普通 Chrome 有什么区别?
前端·chrome·中屹指纹浏览器
qetfw2 天前
Bash 基础:脚本执行、引号与命令替换验证
linux·开发语言·chrome·bash
你挚爱的强哥2 天前
如何设置 Chrome 打开默认页面不要是360的主页https://hao.360.com/?src=lm&ls=n6205869099
前端·chrome·360首页劫持
Frag0ut2 天前
Chrome隐私沙盒与Cookieless实战:2026年广告归因合规迁移指南
chrome·谷歌浏览器·使用技巧·广告归因·隐私沙盒·topics api·cookieless
qetfw2 天前
Bash 变量:export、位置参数与默认值展开验证
linux·开发语言·chrome·bash
学习论之费曼学习法3 天前
无人值守AI内容矩阵实战(7):Playwright 发布器避坑——编辑器竞态、索引延迟与风控
python·线性代数·矩阵·编辑器·浏览器自动化·playwright·踩坑记录
软件派3 天前
Chrome 插件开发实战指南
前端·chrome
qetfw3 天前
Bash 字符串处理:参数展开、序列与脚本执行方式
linux·开发语言·chrome·bash