161万个WPT测试全通过:Moli的Web平台标准兼容性建设蓝图
161万个WPT测试全通过Moli的Web平台标准兼容性建设蓝图【免费下载链接】moliBest headless browser for AI agents. Lite, Fast, High-Compatibility. Built in Rust项目地址: https://gitcode.com/gh_mirrors/moli/moliMoli 是一款用 Rust 编写的开源、高兼容性无头浏览器专为 AI 智能体Agent而生主打轻量、快速、高兼容。在用于验证其智能体浏览器能力范围的 WPTWeb Platform Tests测试集合中一次完整运行通过 161.2 万项测试——这个数字正是 Moli 对浏览器 Web 标准兼容性有多高给出的硬核回答。本文从新手视角拆解这张兼容性蓝图是如何搭建起来的。认识 Moli为 AI 智能体而生的 Rust 无头浏览器与传统无头浏览器不同Moli 是一个独立的浏览器内核而不是对 Chromium 的封装。它的核心设计哲学是结构优先、按需渲染默认只维护 DOM 与样式状态不持续维护完整视觉渲染绝大多数自动化请求提取 HTML/Markdown、查询 DOM、执行 JS、检查网络与存储完全不触发布局与绘制只有真正需要几何信息、截图或坐标输入时才按需构建一次布局树并冻结为FrozenLayoutTree这意味着 Moli 同时拥有完整浏览器运行时V8、CSS 级联、Fetch/WebSocket、Cookie、WebCrypto、IndexedDB 等却只有极低的资源占用——这为它通过大规模 WPT 测试奠定了架构基础。WPT浏览器标准兼容性的行业试金石WPTWeb Platform Tests是 Web 平台社区共同维护的庞大测试套件用于验证浏览器对各项 Web 标准的实现是否符合规范。它是事实上的行业金标准任何宣称高兼容的浏览器都要先过 WPT 这一关。WPT 覆盖的测试领域Moli 的测试夹具目录中均有对应测试领域典型内容DOM / 事件节点操作、属性访问、事件派发、MutationObserver、Range网络Fetch、XHR、CORS 预检、重定向、Cookie脚本与线程Worker、SharedWorker、模块加载、顶层 await存储localStorage、IndexedDB、FileAPI安全WebCrypto、CSP、URL / URLSearchParams导航与历史location、history、Navigation API其他Canvas、表单约束校验、编码、媒体查询每个测试用例内含多个子测试subtest累计规模轻松达到百万级。对 AI 智能体来说WPT 全通过意味着Agent 执行的 JavaScript、操作的 DOM、发出的网络请求其行为与主流浏览器保持一致——这是智能体浏览器可信的底层保障。蓝图支柱一moli-wpt-compat专用兼容性模块 Moli 把 WPT 相关能力收敛到一个独立 cratemoli-wpt-compat/。它不是跑完就忘而是一套声明式、可审计的测试治理体系测试清单驱动manifest.toml 声明纳入哪些测试用例expected.toml 声明每个用例的期望状态解析逻辑集中在 manifest.rs行为标签体系清单支持标签过滤如真实布局布局几何视觉渲染媒体保真等标签让团队可以精确区分哪些行为需要开启真实布局才验证与 Moli 按需渲染的成本模型对齐双份夹具策略fixtures/ported/是 Moli 自行移植整理的 WPT 风格用例覆盖 DOM、Fetch、Worker、WebSocket、CSP 等 40 领域fixtures/upstream/则直接纳入上游 WPT 原始文件FileAPI、WebCryptoAPI、workers、xhr 等两者互相印证运行与报告解耦用例计划由 runner.rs 准备结果由 report.rs 汇总为用例级、套件级、标签级三层报告这种清单 期望 报告的设计让 161.2 万项通过不是黑盒数字而是每一条都能追溯、能回归的资产。蓝图支柱二让 Moli 成为 wptrunner 的一等测试产品 光有自家清单还不够Moli 还要能跑上游 WPT 的原始执行器。tools/wptrunner-moli/ 为上游 WPT 的wptrunner注册了moli产品直接对moli serve发起 WebDriver Classic / BiDi 测试而不借用其他浏览器产品。配套的一条命令脚本 scripts/moli-wpt-run.sh 封装了环境创建基于 uv、依赖安装与测试执行例如可以直接指定某个上游 wdspec 用例运行。值得注意的是Moli 产品在跑 WPT 时默认向moli serve传入--layout --resource——因为 WebDriver/BiDi 与网络语义测试必须观测真实布局和完整的图像、字体、媒体资源请求这与 Moli 日常运行的低资源默认配置形成鲜明对比。详见 tools/wptrunner-moli/README.md。蓝图支柱三回归基线与自动化报告 兼容性建设的难点不在跑一次通过而在持续不回归。Moli 在 benchmark 体系中为 WPT 配备了独立的回归管线moli-benchmark/moli_benchmark/wpt.py 通过 nextest 执行 WPT 兼容性套件产出结构化的moli-wpt-compat-report.json报告并能与基线用例列表做差异对比——哪些用例新增通过、哪些出现退化一目了然。配合支持用例级、标签级过滤的环境变量团队可以只针对某个领域如 Fetch 或 Worker快速定位问题而不必每次都跑全量。161.2 万通过之外Moli 的多维验证体系WPT 只是 Moli 质量蓝图中的一环。完整的验证体系由四个维度组成数据来自 docs/README.zh-CN.md 的测试数据章节验证维度关键结果WPT 标准兼容性一次完整运行通过161.2 万项测试真实网页抓取192 个公开 URL有效页面 103 个成功率 53.6%Chrome Headless 为 52.6%中位 RSS 仅73 MiBChrome 为 773 MiB智能体工作负载CDP 就绪 34.85 msChromium 169.37 ms峰值 PSS 102.46 MiBChromium 348.82 MiBLexbench-Headless-Browser1,308 道可比任务Moli 0.1.1 通过 1,071 道成功率81.88%居本地引擎之首五引擎横评中参照引擎 Chrome 成功率 99.8%Moli 以 81.9% 大幅领先其他无头浏览器62%~45% 区间。更关键的是效率——把成功率和单任务内存峰值放在同一张图上Moli 的性价比优势非常清晰在另一轮 557 道任务的资源对比中Moli 单任务 CPU 中位数100.6 ms、内存峰值中位数92 MiB分别约为 Chrome687 ms / 697 MiB的15% 和 13%——用十分之一的内存和六分之一的 CPU换来了接近主流引擎的兼容水位。对普通用户和开发者意味着什么 这套兼容性蓝图最终要回答的问题是普通用户能得到什么AI 智能体获得可信的浏览器底座WPT 验证过的 DOM、JS、网络行为让 Agent 抓取与自动化操作的结果可预期、可复现提取页面又快又省moli fetch一条命令即可把网页渲染为 Markdown 或语义树中位耗时 1.43 秒、内存占用不到 Chrome 的十分之一真实渲染能力随叫随到开启--layout即可获得完整盒模型、命中测试、截图与 PDF 生成上图Moli 渲染的 HTML5 游戏其 DOM、CSS 与几何信息可在 Chrome DevTools 中实时检查如果你正在为 AI 智能体选型无头浏览器或者想评估高兼容 低资源是否能兼得Moli 的 AGENTS.md 和 docs/ 目录提供了完整的使用指引与多语言文档。写在最后161 万个 WPT 测试全通过不是一次性的里程碑而是一套可持续运转的兼容性蓝图清单声明范围、标签区分行为、报告沉淀结果、基线守护回归。Moli 证明了 Rust 无头浏览器不必在兼容性与轻量之间二选一——它让 AI 智能体以极低的资源代价站在与主流浏览器同等高度的 Web 标准之上。【免费下载链接】moliBest headless browser for AI agents. Lite, Fast, High-Compatibility. Built in Rust项目地址: https://gitcode.com/gh_mirrors/moli/moli创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

浏览器自动化利器:pi-skills的browser-tools如何用Chrome DevTools Protocol驱动真实浏览器

浏览器自动化利器:pi-skills的browser-tools如何用Chrome DevTools Protocol驱动真实浏览器

浏览器自动化利器:pi-skills的browser-tools如何用Chrome DevTools Protocol驱动真实浏览器 【免费下载链接】pi-skills Skills for pi coding agent (compatible with Claude Code and Codex CLI) 项目地址: https://gitcode.com/gh_mirrors/pi/pi-skills b…

2026/10/3 19:53:36 阅读更多 →
为什么 AI 能“看见“你的模型?FreeCAD MCP 截图反馈与多模态机制深度解析

为什么 AI 能“看见“你的模型?FreeCAD MCP 截图反馈与多模态机制深度解析

为什么 AI 能"看见"你的模型?FreeCAD MCP 截图反馈与多模态机制深度解析 【免费下载链接】freecad-mcp FreeCAD MCP(Model Context Protocol) server 项目地址: https://gitcode.com/gh_mirrors/fr/freecad-mcp 你是否想过,为什么 AI 能…

2026/10/3 19:53:36 阅读更多 →
Spark Streaming 与 HBase 写入:批量 Put、连接池管理与写入吞吐优化

Spark Streaming 与 HBase 写入:批量 Put、连接池管理与写入吞吐优化

Spark Streaming 与 HBase 写入:批量 Put、连接池管理与写入吞吐优化1. Spark Streaming 与 HBase 集成基础Spark Streaming 是 Spark 的核心组件之一,用于处理实时数据流。HBase 作为 Hadoop 生态系统中的 NoSQL 数据库,常用于存储大规模结构…

2026/10/3 19:52:36 阅读更多 →

最新新闻

Trade.dll与TradeX.dll调用避坑指南:通达信程序化交易接口实战

Trade.dll与TradeX.dll调用避坑指南:通达信程序化交易接口实战

简介:面向量化交易与程序化交易开发者的通达信交易接口资料包,整合老版Trade.dll与新一代TradeX.dll行情交易二合一接口,通过TdxTradeServer将交易请求封装为HTTP REST API,解决DLL直连的跨语言调用与远程接入难题,适用…

2026/10/4 21:56:06 阅读更多 →
AI论文网站排行:10款避坑,毕业生真心推荐TaoToken

AI论文网站排行:10款避坑,毕业生真心推荐TaoToken

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 21:56:06 阅读更多 →
内存压力测试实战指南:从工具选型到容器避坑全解析

内存压力测试实战指南:从工具选型到容器避坑全解析

简介:一份内存压力测试工具memtester 4.1.2的源码压缩包,面向Linux系统管理员、运维人员及底层开发者,用于检测服务器或PC内存的稳定性与潜在错误,解决因内存位翻转、数据丢失或内存泄漏导致的系统崩溃、数据损坏等隐患。压缩包仅…

2026/10/4 21:56:06 阅读更多 →
Cursor插件四层架构:解决加载失败与中文支持实战指南

Cursor插件四层架构:解决加载失败与中文支持实战指南

1. 项目概述:从“plugins”标题看Cursor生态的底层逻辑与实操真相“plugins”这个词在Cursor语境下,绝不是简单的一个文件夹名或配置项。它直指当前AI编程工具最核心、也最容易被新手忽略的命脉——可扩展性架构。我用Cursor三年,从最早手动改…

2026/10/4 21:55:05 阅读更多 →
Unity3D嵌入WPF实战:窗口句柄、D3DImage纹理共享与视频流方案选型

Unity3D嵌入WPF实战:窗口句柄、D3DImage纹理共享与视频流方案选型

简介:面向需要在桌面应用中集成三维交互能力的开发者,这份资源围绕Unity3D嵌入WPF的实现流程,提供了从Unity场景设计、工程导出到WPF宿主集成的完整示例,覆盖了WindowsFormsHost控件承载渲染窗口、场景加载,以及Unity与…

2026/10/4 21:55:05 阅读更多 →
代码 Agent 自动处理 GitHub Issue 并生成 PR 的工程实践

代码 Agent 自动处理 GitHub Issue 并生成 PR 的工程实践

1. 为什么我要把 Issue 到 PR 这条链路交给代码 Agent第一次冒出“让代码 Agent 处理 GitHub Issue”这个念头,是因为我实在受够了那种机械重复的搬运工作。团队里每天都有新 Issue 进来,一半是拼写错误、空指针防护、日志格式不统一这类小修小补&#x…

2026/10/4 21:55:05 阅读更多 →

日新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 11:40:45 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 9:43:54 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 20:14:29 阅读更多 →