Chrome for Testing 项目下载链接404问题解析与解决方案
【免费下载链接】chrome-for-testing 项目地址: https://gitcode.com/gh_mirrors/ch/chrome-for-testing
背景介绍
Chrome for Testing 项目是Google提供的专门用于自动化测试的Chrome浏览器版本。近期该项目经历了下载服务器迁移,导致许多开发者在使用Puppeteer等工具时遇到了404错误。本文将详细分析问题原因并提供多种解决方案。
问题根源
问题的核心在于Google团队正在进行下载服务器的迁移工作。原本使用的edgedl.me.gvt1.com域名将被弃用,新的下载地址迁移到了storage.googleapis.com。在迁移过程中:
- 旧版URL格式:
https://edgedl.me.gvt1.com/edgedl/chrome/chrome-for-testing/* - 新版URL格式:
https://storage.googleapis.com/chrome-for-testing-public/*
Google团队曾尝试设置从旧URL到新URL的服务器端重定向,但多次尝试都出现了意外故障(包括500错误),因此暂时禁用了重定向功能。
影响范围
这一问题主要影响以下场景:
- 使用Puppeteer自动下载浏览器版本
- 依赖WebdriverIO等工具的测试流程
- 直接调用旧版下载URL的自动化脚本
典型的错误表现为获取404或500状态码,例如尝试下载chrome-linux64.zip等文件时失败。
解决方案
方案一:更新到最新版@Puppeteer/browsers
最推荐的解决方案是确保使用最新版本的@Puppeteer/browsers包。更新命令如下:
npx @puppeteer/browsers@latest install chrome@stable --path ~/.cache/puppeteer
方案二:临时使用开发版
如果紧急需要继续工作,可以暂时使用开发版而非稳定版:
npx @puppeteer/browsers install chrome@dev
方案三:手动修改下载URL
对于直接管理下载流程的代码,可以将URL替换为新格式:
# 旧格式(已弃用)
# download_url = "https://edgedl.me.gvt1.com/edgedl/chrome/chrome-for-testing/%s/%s/%s"
# 新格式
download_url = 'https://storage.googleapis.com/chrome-for-testing-public/%s/%s/%s'
未来计划
Google团队计划在2024年第三季度重新评估服务器重定向的实现方案(内部跟踪编号b/330111501),目标是最终能够安全地启用从旧URL到新URL的重定向功能。
最佳实践建议
- 保持依赖更新:定期更新Puppeteer和相关工具链
- 实现重试机制:在自动化脚本中添加对下载失败的处理逻辑
- 监控官方渠道:关注Chrome for Testing项目的更新公告
- 考虑本地缓存:对于CI环境,可以考虑缓存浏览器二进制文件减少对外部服务的依赖
通过以上措施,开发者可以确保测试环境的稳定性,避免因基础设施变更导致的构建中断。
【免费下载链接】chrome-for-testing 项目地址: https://gitcode.com/gh_mirrors/ch/chrome-for-testing
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



