【笔记】应对Chrome更新导致Chromedriver失效的解决方案:Chrome For Test

news/2024/5/19 4:24:53

随着网络应用和网站的不断发展,自动化测试变得越来越重要,而Selenium成为了许多开发者和测试人员的首选工具之一。然而,对于使用Selenium来进行网站测试的人来说,Chrome浏览器的频繁更新可能会成为一个头疼的问题。每当Chrome更新版本时,其对应的Chromedriver也需要进行更新以保持兼容性,而这经常会导致测试脚本出现问题。面对这一挑战,一种被称为“Chrome For Test”的解决方案应运而生,为许多人提供了有效的解决方案。

Chrome更新与Chromedriver的问题

Chrome浏览器的持续更新是确保安全性和性能的关键步骤之一。然而,对于Selenium用户来说,这也意味着他们需要及时更新Chromedriver,以确保其与最新版本的Chrome浏览器兼容。否则,他们的测试脚本可能会因为Chromedriver与Chrome版本不匹配而失败。

Chromedriver的更新挑战

Chromedriver是Selenium WebDriver的一部分,用于驱动Chrome浏览器进行自动化测试。每次Chrome更新版本后,Chromedriver也必须进行相应的更新,以确保其能够正确地与新版本的Chrome浏览器交互。这对于开发者和测试人员来说可能是一项费时费力的任务,特别是当测试环境需要频繁更新时。

Chrome For Test的解决方案

为了应对Chrome更新导致的Chromedriver失效问题,一些开发者提出了一个创新性的解决方案,即使用“Chrome For Test”(CFT)。

CFT是一个专门设计用于自动化测试的Chrome版本,它与Chromedriver的兼容性更加稳定。相比于普通的Chrome浏览器,CFT的更新频率更低,更注重稳定性和长期支持。这意味着,一旦选择了特定版本的CFT,开发者和测试人员就可以长期使用该版本而无需担心Chromedriver的不兼容性问题。

如何使用Chrome For Test

1、下载Chrome for Testing和chromedriver

教程参考【笔记】chromedriver下载与安装方法
在这里插入图片描述

2、解压到项目根目录下

chromedriver-win64
在这里插入图片描述
chrome-win64
在这里插入图片描述

3、将chromedriver.exe移动到chrome-win64下

在这里插入图片描述

4、指定Chrome For Test路径
# 导入库
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
chrome_driver_path = ".\chrome-win64\chromedriver.exe"
# 初始化浏览器
dr = webdriver.Chrome(service=Service(chrome_driver_path))url = "https://www.baidu.com"
# 打开百度
dr.get(url)input("回车结束程序")
dr.quit()

效果:
在这里插入图片描述

结语

Chrome更新带来的Chromedriver失效问题一直困扰着许多Selenium用户,但Chrome For Test为此提供了一个切实可行的解决方案。通过使用CFT,开发者和测试人员可以更加轻松地管理他们的测试环境,并确保其稳定性和可靠性。作为一个长期支持的解决方案,Chrome For Test已经成为许多人的首选,为他们的自动化测试工作提供了便利和效率。

如果我有哪里写的不对,欢迎评论区留言进行指正。
如果有收获,记得点赞收藏哦🥰


http://www.mrgr.cn/p/48166585

相关文章

抢先看!美团、京东、360等大厂面试题解析,技术面试必备。

技术面试必备!美团、京东、360等大厂面试题详解,让你轻松应对各大公司面试挑战!技术面试必备!美团、京东、360等大厂面试题详解,让你轻松应对各大公司面试挑战!往期硬核面经 哦耶!冲进腾讯了! 牛逼!上岸腾讯互娱和腾讯TEG! 腾讯的面试,强度拉满! 前几篇文章分享了上…

「锐利」升级到13.5版本,重磅推出插拼式智能拼版等多项新功能!

国产印前处理软件「锐利」的又一次重磅升级!包装印前软件「锐利」又升级了!13.5版本! 锐利是集印前行业三十多年的技术和经验开发的一款包装印前处理软件,提供陷印、拼大版、预览、智能标记、预飞、工具箱、导出图像、搜索器、油墨编辑、曲线调整、模拟套印不准、导入标准P…

(mac)Promethues监控之mysqld_exporter(MySQL监控)

搭建Mysqld_exporterPrometheusGrafana监控系统 普罗米修斯是后端数据监控平台,通过Mysqld_exporter收集mysql数据,Grafana将数据用图形的方式展示出来 前提:已安装grafana和promethues 1.下载安装Mysql (1)启动MySQL…

条款46:需要类型转换时请为模板定义非成员函数

**常记溪亭日暮,沉醉不知归路。兴尽晚回舟,误入藕花深处。争渡,争渡,惊起一滩鸥鹭。 昨夜雨疏风骤,浓睡不消残酒。试问卷帘人,却道海棠依旧。知否?知否?应是绿肥红瘦。

PyCharm开发工具安装plugins插件

一. 简介 通过前面的学习,我们知道 python开发常用的一个开发工具(即IDE)是 PyCharm。 本文来简单介绍一下,PyCharm开发工具是如何安装 plugins插件的。其实与 vscode软件安装插件类似。 本文来学习 PyCharm开发工具安装一个中…

nest使用swagger文档

OpenAPI(Swagger)规范是一种用于描述 RESTful API 的强大定义格式。 Nest 提供了一个专用模块来使用它。 安装 npm安装 npm install --save nestjs/swagger swagger-ui-expressyarn 安装 yarn add nestjs/swagger swagger-ui-express引入 使用 SwaggerModule 类初始化 Swa…

阿里云服务器ECS经济型e实例和u1实例哪个好?

阿里云服务器ECS经济型e实例和通用算力型u1实例有什么区别?如何选择?ECS经济型e实例是共享型云服务器,通用算力型u实例是企业级独享型云服务器,e实例性价比高,现在2核2G3M带宽一年99元,云服务器u1价格相对要…

多种方法实现Appium屏幕滑动:让用户仿真动作更简单

简介 在移动端应用中,基于简便的原因,用户通常会倾向于使用滑动操作来达到与应用程序中的控件进行交互的,这使得滑动成为自动化测试中频繁使用的关键动作。在 Appium 中提供了多种方式来实现模拟用户的滑动屏幕动作。 滑动操作的场景 移动端应用中的滑动场景,大致有如下几种…

使用 IPAM 解决方案简化分布式网络管理

随着组织在数字领域的全球扩张,分布式网络是不可避免的,这意味着,随着 IT 基础设施的发展,组织需要适应,这包括在不断增长的系统需求、应用程序堆栈、各种协议和安全防御中监控、现代化和简化流程和资源。在有效管理现…

《QT实用小工具·三十八》QT炫酷的菜单控件

1、概述 源码放在文章末尾 非常飘逸的 Qt 菜单控件,带有各种动画效果,用起来也十分方便。 无限层级,响应键盘、鼠标单独操作,支持单快捷键。 允许添加自定义 widget、layout,当做特殊的 QDialog 使用。 项目demo演示…

《最新出炉》系列入门篇-Python+Playwright自动化测试-40-录制生成脚本

1.简介 各种自动化框架都会有脚本录制功能, playwright这么牛叉当然也不例外。很早之前的selenium、Jmeter工具,发展到每种浏览器都有对应的录制插件。今天我们就来看下微软自动化框架playwright是如何录制脚本的。很多小伙伴或者童鞋们会觉得奇怪,怎么现在才将录制生成脚本…

Cisco Catalyst 9800 Wireless Controller, IOS XE Software Release IOSXE-17.14.01 ED

Cisco Catalyst 9800 Wireless Controller, IOS XE Software Release IOSXE-17.14.01 EDCisco Catalyst 9800 Wireless Controller, IOS XE Software Release IOSXE-17.14.01 ED Catalyst 9800 系列无线控制器软件 请访问原文链接:Cisco Catalyst 9800 Wireless Controller, I…

Cisco Catalyst 9800-CL Wireless Controller for Cloud, Release IOSXE-17.14.01 ED

Cisco Catalyst 9800-CL Wireless Controller for Cloud, Release IOSXE-17.14.01 EDCisco Catalyst 9800-CL Wireless Controller for Cloud, Release IOSXE-17.14.01 ED 面向云的思科 Catalyst 9800-CL 无线控制器,专为基于意图的网络全新打造 请访问原文链接:Cisco Cataly…

FormData传输JSON同时上传单个/多个文件问题

背景 最近在开发一个功能时,涉及到向后端接口发送:JSON请求参数 多个文件 刚开始想通过RequestBody(application/json)形式进行传值,但是文件不好处理。有一个通过application/json传输文件数据的方法,就是将文件转成base64,然后在后端进行处理。但是这种方式涉及到大文…

计算机网络相关知识总结

一、概述 计算机网络可以极大扩展计算机系统的功能机器应用范围,提高可靠性,在为用户提供放方便的同时,减少了整体系统费用,提高性价比。 计算机网络的功能主要有:1. 数据共享;2. 资源共享;3. 管…

python包:CV

OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。 O…

实时分析平台设计方案:924-6U CPCI振动数据DSP实时分析平台

一、产品概述基于CPCI结构完成40路AD输入,30路DA输出的信号处理平台,处理平台采用双DSP+FPGA的结构,DSP采用TI公司新一代DSP TMS320C6678,FPGA采用Xilinx V5 5VLX110T-1FF1136芯片,设计尽量采用工业级芯片。该方案描述了技术要求,硬件设计、软件设计方案。提出任务的质量…

Redis入门到通关之Redis数据结构-Hash篇

文章目录 ☃️ 概述☃️底层实现☃️源码☃️其他 欢迎来到 请回答1024 的博客 🍓🍓🍓欢迎来到 请回答1024的博客 关于博主: 我是 请回答1024,一个追求数学与计算的边界、时间与空间的平衡,0与1的延伸的后…

CentOS7/RHEL7 root密码破解

我们知道root是CentOS7/RHEL7系统的管理员用户,一般情况下,我们是不会把其密码忘记的,如果万一忘记了,如果破解root密码呢,今天就为大家详细讲讲。 1.CentOS7/RHEL7 root密码破解 以VMware虚拟机上CentOS7系统为例 …

GreatSQL统计信息相关知识点

相关知识点: INNODB_STATS_PERSIST=ON或用STATS_PERSIST=1定义单个表时,优化器统计信息将持久化到磁盘。默认情况下,innodb_stats_persistent是启用的。 持久统计信息存储在mysql.innodb_table_stats和mysql.innodb_index_stats表中。 默认情况下启用的innodb_stats_auto_re…