与您的 AI Agent 并行自动运行许多浏览器测试
Playwright MCP 每次只能通过一次工具调用来驱动浏览器,速度慢且消耗大量 Token。现在,Claude Code 或 Codex 只需几行代码,就能在 ego (lite) 中运行完整测试:速度提升 2.4 倍,还能并行执行多个测试,每个测试都在独立的 Space 中运行。
只需询问即可运行浏览器测试
例如,我要求codex检查这个电子商务网站是否有任何错误。 Codex 将运行整个测试,修复所有错误并告诉我结果。我唯一需要做的就是滚动 Tiktok 并观看它的工作。
同一页面在屏幕上从损坏的位置转到右侧
产品页面显示异常。 Agent 会在 ego (lite) 中检查页面、修复源代码中的 CSS,打开的页面随即会在屏幕上正确地重新渲染。
用 ego (lite) 极速运行浏览器测试
传统的浏览器测试通常使用 Playwright MCP 或 Chrome DevTools MCP,一次只执行一个工具调用;每一步都要等待模型读取上一步结果,因此既慢又昂贵。现在,Agent 可以借助 ego (lite),用一段 JavaScript 一次执行多个步骤,完成得更快,也消耗更少的 Token。
| ego (lite) | Playwright MCP | Chrome DevTools MCP | |
|---|---|---|---|
| Agent 如何驱动它 | 通过/ego-browser 技能 | 外部 MCP 服务器。每个操作调用一个工具。 | 外部 MCP 服务器。每个操作调用一个工具。 |
| 设置 | 无需设置,可与任何 Agent 配合使用。 | npx 安装、启动模式配置、频繁启动和 Chrome-发现错误。 | Remote debugging, user-data-dir, cross-host setup. |
| Token 使用量 | 低。没有 MCP 工具模式,只有 Agent 记录的内容进入上下文:每次传递一个快照,而不是每个操作后一个快照。 | 高。用户报告 Token 消耗增长至 6 倍,并出现 20 万 Token 的上下文溢出。 | 高。屏幕截图是昂贵的。 |
| 登录状态 | 您自己登录的浏览器。与您的Chrome的登录状态相同 | 默认隔离浏览器;携带登录意味着扩展模式或存储状态设置。 | 可以附加,但会抓取您正在使用的标签页。 |
| iframe / Shadow DOM / SDK 小部件 | 它的页面快照内置于渲染引擎中,因此它可以读取所有页面快照。 | 辅助功能快照存在 iframe 盲点。 | 原始 DOM,你自己处理。 |
| 控制台/网络/跟踪 | 控制台、网络和跟踪,直接从 Chrome DevTools 数据读取。 | 控制台、网络、屏幕截图。 | 最深:灯塔、性能、内存。 |
| 定位器稳定性 | 锚定语义标签,在类别变化中幸存下来。 | 参考文献/可访问性,相当稳定。 | 原始 DOM 选择器。 |
| 验证码/机器人检测 | 真正的人类会话,最不可能绊倒它。 | 独立/无头浏览器,经常被标记。 | 连接后效果更好,但会抓住您的标签。 |
| 并行任务 | 旨在支持通过 Spaces 同时运行多个任务。 | 每台服务器一个会话;并行运行意味着管理额外的隔离实例。 | 单实例、大标签计数会导致崩溃。 |
摩擦从来都不是浏览器。这是中间的一层。
在开发者论坛和问题追踪平台上,大家最常抱怨的是 MCP——它位于 Agent 与浏览器之间,容易出现连接中断、审批堆积、会话失效和 Token 消耗激增等问题。ego (lite) 已经把一切配置好,不再需要处理这些莫名其妙的错误。
浏览器可以工作。与它的联系则不然。
- 连接: 工具显示,但 Agent 不会调用它们,在“等待批准”时运行停止,并且同一服务器在每个客户端中的行为不同
- 批准: 每个工具调用都会有一个弹出窗口,即使在一个任务中通常有 10 到 30 个弹出窗口,即使打开了“运行所有内容”
- 可靠性: 完成一半的任务,或者已经成功但仍然超时的导航
没有中间层:ego (lite) 本身就是浏览器
- 设计稳定: Agent 直接与其拥有的本地浏览器对话,中间没有 MCP 传输来丢弃或停止
- 更少的批准: 一次运行多个步骤,而不是每个操作调用一次工具
- 可预测: 每次都以同样的方式使用任何 AI Agent
没有测试脚本。无需维护选择器。就说要检查什么吧。
使用 Playwright、Cypress 或 Selenium 测试时,你需要编写测试并维护选择器;类名一改或布局一调整,测试就可能失效。ego (lite) 接收自然语言检查要求,并根据元素的实际含义来定位,因此 UI 变化不会轻易破坏测试。
您编写规范,维护选择器
- 手写并版本a
.spec对于您想要涵盖的每个流程 - 引脚选择器如
page.click(".btn-x7f3")下次 UI 更改时会中断 - 添加等待和重试来对抗脆弱性
- 构建登录自动化或存储状态文件以在登录后进行测试
- 每次重新设计后重新运行并修复套件
只说要检查什么
- 无规格可写:用一句话告诉您的 Agent 支票
- 根据元素的含义而不是 CSS 类来定位元素,因此重命名或重新排列不会破坏它
- 智能等待处理异步内容,无需手动睡眠
- 在没有登录自动化的情况下进行登录后的测试
- 需要视觉回归测试吗?Agent 对比截图
对于在 CI 中无人值守运行的版本化、无头套件,或者跨 Firefox 和 WebKit 进行测试, 保留Playwright。ego (lite) 则是在开发过程中快速、无需脚本的内部迭代工具。
AI Agent 如何操控 ego (lite)
Agent 通过编写一个完整的JavaScript程序来驱动浏览器。单个调用捆绑了每个步骤:打开商店、添加产品、等待结帐,并在浏览器中按顺序运行它们,因此 Agent 永远不会等待一个操作返回后再发送下一个操作。
它处理通常使浏览器测试不稳定的问题
我们测试了开发者公认最难自动化的场景,Agent 借助 ego (lite) 全部顺利完成。它的语义 Snapshot 直接在 Chromium 渲染引擎内部生成,因此可以看见注入脚本无法访问的 Shadow Root 和跨文档 iframe。
Shadow DOM
Acts inside web-component shadow roots, where injected scripts go blind.
Payment iframes
Fills card fields inside cross-document iframes, like a Stripe checkout.
Custom date pickers
Picks a date range in a custom calendar with no test ids.
Drag and drop
Real HTML5 drag: moves a kanban card, the board follows.
Infinite scroll
Scrolls a lazy feed until every item is loaded, no hand-tuned waits.
Paginated tables
Walks every page of an admin table and pulls each row.
Conditional modals
Cookie banners and dialogs that pop up mid-flow get handled, not tripped over.
Autocomplete
Types an address, waits for the suggestions, picks the right one.
落在被覆盖或禁用的按钮上的点击将被报告为失败,而不是错误通过,这与真正的测试框架处理它的方式相同。
您登录的浏览器仍在您的控制之下
让 Agent 在您登录的浏览器中自由活动是值得暂停的事情。这就是边界所在。
它在自己的Space中工作
该 Agent 在浏览器内的单独工作区中运行。它会共享您的登录信息,但您的标签页和windows保持不变。
每一步都看得见
Mac 上真正的有头浏览器,而不是隐藏的无头进程。实时观看运行情况,并随时从 Agent 的 CLI 中断运行。
什么都没有离开你的Mac
历史记录、Cookie 和会话都保留在你的电脑上,ego (lite) 不会上传这些数据。
当流程具有真正的副作用时,收费的签出或删除的删除,将 Agent 指向本地主机或登台, 与手动测试的方式相同.
如何使用,一步一步
Web 应用程序测试分为三个步骤:将 Agent 指向本地主机或任何 URL,说出要检查的内容,然后读回失败的内容。
您日常使用的Chromium浏览器。一键导入您的 Chrome 登录信息,因此 Agent 会像您一样进行测试。
应该测试什么?
/ego-browser 打开 localhost:3000,进行结帐,然后告诉我出了什么问题
类型 /ego-browser 只需用您的 Agent 能够理解的任何语言说出要检查的内容即可。
| 页面 | 结果 |
|---|---|
| /checkout | 好的 |
| /product/gift-card | 控制台错误 |
| /product/camera | 图像 404 |
每个损坏的页面都会返回控制台错误或失败的请求来解释它,而不仅仅是通过或失败。
ego (lite) 适用与不适用的场景
专为快速内部循环而构建:在开发时重现、调试和验证。
ego (lite) 擅长什么
真实浏览器中的内循环。
- 在真实的登录浏览器中重现和调试错误
- 没有登录自动化的登录后的测试流程
- 读取控制台错误、失败的请求和页面状态
- 并行在多个页面上运行探索性检查
- 在您发现错误的同一会话中验证修复
何时到达Playwright
诚实地对待边界。
- 在 CI 中无人值守运行的无头回归测试(ego (lite) 是一款有界面的 Mac 浏览器)
- 跨 Firefox 和 WebKit 测试(ego (lite) 基于 Chromium)
- 您提交并拥有的版本化、确定性测试套件
为您的 Agent 提供一个真实的浏览器来进行测试
下载 Mac 版 ego (lite)FAQ
不需要。您带上已使用的 AI Agent,例如 Claude Code、Codex 或 Cursor,并用简单语言告诉它要检查的内容。 Agent 为您编写并运行浏览器步骤。无需维护 .spec 文件,也无需手写 CSS 选择器,因为 ego (lite) 从页面的语义快照中定位元素。
Playwright MCP 是一个 MCP 服务器,Agent 的每个操作都需要一次工具调用;15 个步骤就意味着模型往返 15 次,速度慢且 Token 消耗高。ego (lite) 本身就是浏览器:Agent 在真实登录的浏览器中编写一小段 JavaScript,一次执行多个步骤。我们使用 Opus 4.8 在 Claude Code 中测试同一项任务时,ego (lite) 约 18 秒完成,只需 2 次模型往返;Playwright MCP 则约需 43 秒和 9 次往返。ego (lite) 还可以并行运行多个测试任务,每个任务都位于自己的 Space 中,这是单个 MCP 浏览器无法实现的。
是的,这就是它的闪光点。 ego (lite) 是您自己的日常浏览器,已经登录,因此 Agent 可以测试仪表板、内部管理面板和帐户流程,而无需您先构建登录自动化。因为它的行为就像真正的人类会话,所以与无头浏览器或新启动的浏览器相比,它触发验证码或机器人检测的可能性也小得多。
每个任务都在自己的Spaces中运行,即同一浏览器内的单独Spaces,就像同一配置文件的额外 windows 一样。Spaces共享您的登录信息,但保留自己的页面,因此并行运行不会相互冲突,也不会与您正在使用的标签页发生冲突。对于网站来说,它看起来就像一个登录用户打开了多个标签页。如果您的应用程序只允许每个帐户一个活动会话,请一次运行一个流程或使用测试帐户。
是的,从某种意义上说,Agent 捕获基线屏幕截图和新屏幕截图,逐个像素地比较它们,并告诉您发生了什么变化以及发生在哪里。它是在浏览器中执行差异的 Agent,而不是要设置的单独的视觉测试产品,因此不需要连接 Percy 或 Chromatic。对于具有审核工作流程和 CI 门控的托管基线服务,专用的视觉测试工具仍然更合适。
不是今天。 ego (lite) 是 Mac 上的一个真正的、有头的浏览器,专为在开发时进行测试而构建:重现错误、调试它、验证修复、跨页面运行检查。对于在 CI 中无人值守运行的无头套件,或者跨 Firefox 和 WebKit 进行测试,请保留您的 Playwright 测试套件。 ego (lite) 是快速内部循环,而不是 CI 运行程序。
真实用户会遇到的功能和运行时问题:流程中断、按钮不执行任何操作、未捕获的 JavaScript 错误、失败的网络请求、控制台错误、输出错误的值。 Agent 读取页面状态以及控制台和网络,因此它会报告失败的原因和位置,而不仅仅是绿色或红色。
Agent 在自己的Space中工作,因此您的标签页和 windows 保持不变,一切都发生在真实、可见的浏览器窗口中,您可以随时从 Agent 的 CLI 中观看和中断。您的浏览数据保留在您自己的计算机上:ego (lite) 不会上传您的历史记录、cookie 或会话。对于具有实际副作用的流程(例如实际收费的结帐),请将 Agent 指向本地主机或登台,就像您手动测试的方式一样。如果您连接外部 Agent 或模型提供程序,则该提供程序有自己的数据策略。