Chrome for Testing 项目下载链接404问题解析与解决方案

Chrome for Testing 项目下载链接404问题解析与解决方案

【免费下载链接】chrome-for-testing 【免费下载链接】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。在迁移过程中:

  1. 旧版URL格式:https://edgedl.me.gvt1.com/edgedl/chrome/chrome-for-testing/*
  2. 新版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的重定向功能。

最佳实践建议

  1. 保持依赖更新:定期更新Puppeteer和相关工具链
  2. 实现重试机制:在自动化脚本中添加对下载失败的处理逻辑
  3. 监控官方渠道:关注Chrome for Testing项目的更新公告
  4. 考虑本地缓存:对于CI环境,可以考虑缓存浏览器二进制文件减少对外部服务的依赖

通过以上措施,开发者可以确保测试环境的稳定性,避免因基础设施变更导致的构建中断。

【免费下载链接】chrome-for-testing 【免费下载链接】chrome-for-testing 项目地址: https://gitcode.com/gh_mirrors/ch/chrome-for-testing

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值