Selenium 自动化测试中 Chrome 浏览器弹出“您的连接不是私密连接”

要解决 Selenium 自动化测试中 Chrome 浏览器弹出"您的连接不是私密连接"(NET::ERR_CERT_DATE_INVALID)的拦截问题,核心思路是让 Chrome 忽略 SSL 证书验证错误。以下是具体步骤和代码实现:

错误原因分析

该错误是由于目标网站的 SSL 证书存在问题(如证书过期、自签名未受信任、系统时间与证书有效期不匹配等),Chrome 出于安全策略默认拦截此类不安全的连接。在自动化测试场景中,我们需要让浏览器跳过这类安全检查,继续执行脚本。

解决方案:配置 Chrome 忽略证书错误

通过 Selenium 的 ChromeOptions 添加忽略证书错误的启动参数,让 Chrome 主动跳过 SSL 验证。

步骤 1:导入依赖 & 配置 ChromeOptions

在 Python 代码中,引入 selenium 的 webdriver 和 ChromeOptions,并创建 ChromeOptions 实例,添加忽略证书错误的参数。

python 复制代码
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

# 初始化 Chrome 配置选项
chrome_options = Options()

# 关键:添加忽略证书错误的参数
chrome_options.add_argument("--ignore-certificate-errors")  
# (可选)允许加载不安全内容(若网站因证书问题同时拦截静态资源,可补充此参数)
chrome_options.add_argument("--allow-running-insecure-content")  

# (可选)无头模式(Headless):若需后台运行浏览器,取消下面一行的注释
# chrome_options.add_argument("--headless=new")  

# 初始化 ChromeDriver 并传入配置选项
driver = webdriver.Chrome(options=chrome_options)  

# 访问目标网址(替换为你要测试的 URL)
driver.get("https://test.com.cn")  

步骤 2:验证与扩展(按需调整)

• 证书有效期/信任问题:若目标网站的证书是自签名或已过期,仅靠代码参数可能不够稳定(部分环境下 Chrome 仍会拦截)。此时需手动将证书导入系统信任库(如 Windows 证书管理器、Linux 的 ca-certificates 等),但自动化脚本中较难实现,优先推荐代码参数跳过。

• HSTS 强制拦截:若网站启用了 HTTP 严格传输安全(HSTS),即使忽略证书错误也可能无法访问。需手动清除浏览器 HSTS 缓存(地址栏输入 chrome://net-internals/#hsts 操作),但自动化场景下较难复现,建议优先确保测试环境证书合法。

• 环境兼容性:确保 ChromeDriver 版本与本地安装的 Chrome 浏览器版本严格匹配(可在 https://sites.google.com/chromium.org/driver/ 查询对应版本),否则可能触发其他启动错误。

原理说明

• --ignore-certificate-errors:强制 Chrome 跳过所有 SSL/TLS 证书验证(包括过期、自签名、域名不匹配等),直接建立连接。

• --allow-running-insecure-content:允许页面加载 HTTP 协议的资源(若页面主协议是 HTTPS,但引用了 HTTP 的脚本/图片,Chrome 会因"混合内容"拦截,此参数可绕过)。

通过上述配置,Chrome 会在自动化测试中自动跳过"连接不是私密连接"的拦截页面,继续执行后续的页面操作逻辑。

通过添加该代码之后正常访问网页

相关推荐
Rosanci13 小时前
谷歌浏览器插件开发实战指南:从 Hello World 到上架发布
大数据·人工智能·chrome·程序人生
霍格沃兹测试学院-小舟畅学20 小时前
UI 测试的语义断言:Midscene aiAssert 比像素比对稳在哪、又会骗在哪
人工智能·测试工具
zuozewei1 天前
附录 A:主流工具对比选型表
人工智能·测试工具
我的xiaodoujiao1 天前
Django 基础知识详细图文教程 10-Django 模板引擎 3
后端·python·测试工具·django
霍格沃兹测试学院-小舟畅学1 天前
Google 开源 ARTEMIS:AI Agent 如何接管 Android 真机测试?
人工智能·测试工具
Liaiyang661 天前
# 自研 AST 容错初筛工具:横向评测 Django、PyTorch、TensorFlow 三大开源 Python 框架异常收容风险
python·测试工具·自动化·开源软件·代码规范·devops·代码复审
霍格沃兹测试学院-小舟畅学1 天前
我用 AI 把 Swagger 变成 500 条 pytest 用例,回归从 3 天到 3 小时
人工智能·测试工具
tokenKe2 天前
Tencent BrowserSkill :让 AI Agent 借用你的真实浏览器| 已登录浏览器与编码 Agent 之间的本地桥 |SSP
chrome·开源·github
夏天要喝冰可乐2 天前
一处写作,多平台分发:我给掘金做了一款开源 Chrome 插件
前端·chrome·vibecoding
奔跑中的小象2 天前
GuideLLM 压测实战指南:给大模型推理服务做一次完整 SLA 评估
测试工具·guidellm