Puppeteer-core v24.2.0 版本更新解析
Puppeteer 是一个由 Google Chrome 团队开发的 Node.js 库,它提供了一个高级 API 来通过 DevTools 协议控制 Chromium 或 Chrome 浏览器。puppeteer-core 是 Puppeteer 的核心模块,它不包含浏览器本身,需要用户自行配置浏览器环境。
主要功能更新
新增键盘锁定和指针锁定权限支持
本次更新中,Puppeteer 新增了对键盘锁定(keyboard-lock)和指针锁定(pointer-lock)权限的支持。这两个功能在现代 Web 应用中越来越常见:
-
键盘锁定:允许网页捕获所有键盘输入,即使焦点不在该页面上。这在全屏游戏或多媒体应用中特别有用。
-
指针锁定:使鼠标指针被"锁定"在网页上,隐藏指针并允许无限移动。这对于第一人称视角游戏等需要连续鼠标输入的应用至关重要。
开发者现在可以通过 Puppeteer 的权限 API 来模拟这些权限的授予或拒绝,从而更全面地测试网页在不同权限状态下的行为。
浏览器版本升级
Puppeteer 24.2.0 版本同步更新了支持的浏览器版本:
-
Chrome 升级至 133.0.6943.53:这个版本包含了最新的安全补丁和功能改进。值得注意的是,133 版本可能包含了一些新的 DevTools 协议特性,这些特性可能会在未来的 Puppeteer 版本中被利用。
-
Firefox 升级至 135.0:对于使用 Puppeteer 与 Firefox 集成的开发者来说,这个更新确保了与最新 Firefox 版本的兼容性。
此外,还包含了一个针对 Chrome 132.0.6834.159 的修复性更新,这表明 Puppeteer 团队在持续跟踪浏览器版本的稳定性问题。
重要问题修复
WebDriver 用户代理设置改进
修复了一个关于 WebDriver 用户代理设置的问题。现在,用户代理可以被多次设置而不会出现问题。这个改进对于需要动态修改用户代理的测试场景特别重要,例如:
- 测试网站在不同用户设备上的响应
- 模拟爬虫行为
- 验证用户代理检测逻辑
依赖项更新
Puppeteer-core 24.2.0 更新了其依赖的 @puppeteer/browsers 包至 2.7.1 版本。这个包负责管理浏览器二进制文件的下载和安装,更新可能包含了浏览器管理的改进或修复。
技术影响分析
对于自动化测试开发者来说,这些更新意味着:
- 更全面的权限测试能力,可以模拟更多现代 Web 应用场景
- 与最新浏览器版本的兼容性保证
- 更稳定的 WebDriver 集成,特别是在需要修改用户代理的场景下
对于需要特定浏览器版本的开发者,建议关注 Puppeteer 与浏览器版本的对应关系,确保测试环境的一致性。
升级建议
升级到 Puppeteer-core 24.2.0 时,开发者应该:
- 检查现有测试中是否使用了键盘锁定或指针锁定功能,考虑添加相应的权限测试用例
- 验证现有测试在 Chrome 133 和 Firefox 135 下的行为
- 如果使用了 WebDriver 并动态修改用户代理,可以简化相关代码
这个版本继续强化了 Puppeteer 作为现代 Web 自动化测试工具的领先地位,为开发者提供了更多控制和测试现代 Web 应用特性的能力。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0152- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
LongCat-Video-Avatar-1.5最新开源LongCat-Video-Avatar 1.5 版本,这是一款经过升级的开源框架,专注于音频驱动人物视频生成的极致实证优化与生产级就绪能力。该版本在 LongCat-Video 基础模型之上构建,可生成高度稳定的商用级虚拟人视频,支持音频-文本转视频(AT2V)、音频-文本-图像转视频(ATI2V)以及视频续播等原生任务,并能无缝兼容单流与多流音频输入。00
auto-devAutoDev 是一个 AI 驱动的辅助编程插件。AutoDev 支持一键生成测试、代码、提交信息等,还能够与您的需求管理系统(例如Jira、Trello、Github Issue 等)直接对接。 在IDE 中,您只需简单点击,AutoDev 会根据您的需求自动为您生成代码。Kotlin03
Intern-S2-PreviewIntern-S2-Preview,这是一款高效的350亿参数科学多模态基础模型。除了常规的参数与数据规模扩展外,Intern-S2-Preview探索了任务扩展:通过提升科学任务的难度、多样性与覆盖范围,进一步释放模型能力。Python00
skillhubopenJiuwen 生态的 Skill 托管与分发开源方案,支持自建与可选 ClawHub 兼容。Python0112