TesterArmy e2e
TesterArmy e2e 是什么:在常规测试中加入 Agent 步骤
理解自然语言操作、明确断言和经过验证的录制回放
TesterArmy e2e 是什么:在常规测试中加入 Agent 步骤知识学习CN编辑简报更新 2026-10-14
你将学会
- 从测试契约看起
- 理解回放条件
- 界定证据
开始前需要
- 可丢弃的应用或测试账号
- Web 或移动引擎
- 明确选择的 Agent 模型供应商
两次运行后再修改 UI,检验缓存动作的边界
先看结论
- Agent 步骤可与定位器断言共存。
- 回放取决于经过验证的轨迹。
- 没有 Agent 步骤的测试无需模型。
从测试契约看起
TesterArmy e2e 用于 Web 与移动应用的端到端测试。一段测试可以混合自然语言 `agent.act`、模型判断的 `agent.assert`,以及 `expect(screen.getByRole(...))` 等定位器断言。
自然语言步骤允许模型根据当前界面选择动作;稳定的不变量仍适合用定位器检查。README 明确指出,没有 Agent 步骤的测试不需要调用模型。
理解回放条件
当后续断言验证了 Agent 步骤,框架可以记录动作,并在后续运行中尝试回放,直到应用发生足以影响执行的变化。它是有条件的缓存路径,并非每次都免模型调用。
固定版本源码分别实现轨迹录制与回放;回放仍受动作预算和终态检查约束。界面变化、目标丢失或不安全轨迹都可能中止回放,再交回实时步骤。
界定证据
我们检查了提交 `aff6f34` 的 README、安装与安全文档,以及 runner、Agent 和回放源码,没有实际运行浏览器或移动测试。
本系列把文档中的流程作为待评估的设计,不把仓库示例冒充可靠性、成本节省或平台兼容性的实测结果。
如何选择
| 比较维度 | 方案 A | 方案 B |
|---|---|---|
| Best when | You need predictable behavior and easy auditing | You need adaptive optimization and have reliable telemetry |
| Main risk | May leave performance on the table | Can become difficult to explain or debug |
实施步骤
- 1
选一个可丢弃的 Web 或移动目标。
- 2
写一条 Agent 步骤和可核对的后置断言。
- 3
运行两次,检查第二次是否回放。
可复制示例
ts
await agent.act('open the account settings');
await agent.assert('the billing panel is visible');
await expect(screen.getByRole('heading')).toContainText('Billing');常见问题
每条测试都要配置 AI 吗?
README 说没有 Agent 步骤的测试不需要模型。
本文复现了回放吗?
没有,仅检查固定版本的文档与源码。
资料来源
- TesterArmy e2e / README.md来源核查 2026-10-14
- TesterArmy e2e / packages/e2e/src/agent/act.ts来源核查 2026-10-14
- TesterArmy e2e / packages/e2e/src/agent/replay.ts来源核查 2026-10-14
- TesterArmy e2e / packages/e2e/src/cache/recorder.ts来源核查 2026-10-14