首页
/ Puppeteer-core v24.2.0 版本更新解析

Puppeteer-core v24.2.0 版本更新解析

2025-05-31 10:31:11作者:柯茵沙

Puppeteer 是一个由 Google Chrome 团队开发的 Node.js 库,它提供了一个高级 API 来通过 DevTools 协议控制 Chromium 或 Chrome 浏览器。puppeteer-core 是 Puppeteer 的核心模块,它不包含浏览器本身,需要用户自行配置浏览器环境。

主要功能更新

新增键盘锁定和指针锁定权限支持

本次更新中,Puppeteer 新增了对键盘锁定(keyboard-lock)和指针锁定(pointer-lock)权限的支持。这两个功能在现代 Web 应用中越来越常见:

  1. 键盘锁定:允许网页捕获所有键盘输入,即使焦点不在该页面上。这在全屏游戏或多媒体应用中特别有用。

  2. 指针锁定:使鼠标指针被"锁定"在网页上,隐藏指针并允许无限移动。这对于第一人称视角游戏等需要连续鼠标输入的应用至关重要。

开发者现在可以通过 Puppeteer 的权限 API 来模拟这些权限的授予或拒绝,从而更全面地测试网页在不同权限状态下的行为。

浏览器版本升级

Puppeteer 24.2.0 版本同步更新了支持的浏览器版本:

  1. Chrome 升级至 133.0.6943.53:这个版本包含了最新的安全补丁和功能改进。值得注意的是,133 版本可能包含了一些新的 DevTools 协议特性,这些特性可能会在未来的 Puppeteer 版本中被利用。

  2. Firefox 升级至 135.0:对于使用 Puppeteer 与 Firefox 集成的开发者来说,这个更新确保了与最新 Firefox 版本的兼容性。

此外,还包含了一个针对 Chrome 132.0.6834.159 的修复性更新,这表明 Puppeteer 团队在持续跟踪浏览器版本的稳定性问题。

重要问题修复

WebDriver 用户代理设置改进

修复了一个关于 WebDriver 用户代理设置的问题。现在,用户代理可以被多次设置而不会出现问题。这个改进对于需要动态修改用户代理的测试场景特别重要,例如:

  • 测试网站在不同用户设备上的响应
  • 模拟爬虫行为
  • 验证用户代理检测逻辑

依赖项更新

Puppeteer-core 24.2.0 更新了其依赖的 @puppeteer/browsers 包至 2.7.1 版本。这个包负责管理浏览器二进制文件的下载和安装,更新可能包含了浏览器管理的改进或修复。

技术影响分析

对于自动化测试开发者来说,这些更新意味着:

  1. 更全面的权限测试能力,可以模拟更多现代 Web 应用场景
  2. 与最新浏览器版本的兼容性保证
  3. 更稳定的 WebDriver 集成,特别是在需要修改用户代理的场景下

对于需要特定浏览器版本的开发者,建议关注 Puppeteer 与浏览器版本的对应关系,确保测试环境的一致性。

升级建议

升级到 Puppeteer-core 24.2.0 时,开发者应该:

  1. 检查现有测试中是否使用了键盘锁定或指针锁定功能,考虑添加相应的权限测试用例
  2. 验证现有测试在 Chrome 133 和 Firefox 135 下的行为
  3. 如果使用了 WebDriver 并动态修改用户代理,可以简化相关代码

这个版本继续强化了 Puppeteer 作为现代 Web 自动化测试工具的领先地位,为开发者提供了更多控制和测试现代 Web 应用特性的能力。

登录后查看全文
热门项目推荐

项目优选

收起