TesterArmy e2e
TesterArmy e2e 源码导读:从测试调用到轨迹回放
定位实现适应性步骤、录制和 runner 控制的文件
TesterArmy e2e 源码导读:从测试调用到轨迹回放知识学习CN编辑简报更新 2026-10-14
你将学会
- 从公开调用开始
- 阅读录制边界
- 寻找模型循环
开始前需要
- 可丢弃的应用或测试账号
- Web 或移动引擎
- 明确选择的 Agent 模型供应商
两次运行后再修改 UI,检验缓存动作的边界
先看结论
- 录制存在不可回放情况。
- 回放检查实时条件。
- API 仍在演进。
从公开调用开始
README 示例把 `agent.act`、`agent.assert` 与 `expect` 放在同一测试里。`packages/e2e/src/agent/act.ts` 处理语义动作请求,`run/runner.ts` 负责测试执行与目标生命周期。
不能仅凭自然语言测试行推断结果。需要把步骤与配置引擎、实际提供的动作语法对应起来,才能解释 Agent 能做什么。
阅读录制边界
`cache/recorder.ts` 从被接受的动作构建轨迹,并把部分不安全或不完整输入标为不可回放。注释解释了为何不能截短输入,也不能悄悄跳过缺失动作。
`agent/replay.ts` 把记录动作绑定到实时执行器,检查视口和目标条件;不匹配就停止,终态核验通过前不会自行结束步骤。
寻找模型循环
`agent/executor.ts` 和 `agent/tool-loop.ts` 管理适应性执行。runner 与 engine 接口把测试编排和浏览器、设备实现分离。
这是源码结构检查,不代表我们跑过所有失败分支。仓库说明 1.0 前 API 仍会变化,因此追踪行为必须固定版本。
如何选择
| 比较维度 | 方案 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
从公开测试调用入手。
- 2
依次追踪 runner、执行器、录制器与回放。
- 3
专门测试一种不匹配场景。
可复制示例
text
test call -> runner.ts -> act.ts -> executor.ts
accepted actions -> recorder.ts -> trace
next run -> replay.ts -> live end-state check常见问题
哪个文件存放回放输入?
固定版本 cache/recorder.ts 从动作记录构造轨迹。
哪里执行回放?
固定版本 agent/replay.ts 将轨迹应用到当前界面观察。
资料来源
- TesterArmy e2e / README.md来源核查 2026-10-14
- TesterArmy e2e / packages/e2e/src/agent/act.ts来源核查 2026-10-14
- TesterArmy e2e / packages/e2e/src/agent/executor.ts来源核查 2026-10-14
- TesterArmy e2e / packages/e2e/src/run/runner.ts来源核查 2026-10-14
- TesterArmy e2e / packages/e2e/src/cache/recorder.ts来源核查 2026-10-14
- TesterArmy e2e / packages/e2e/src/agent/replay.ts来源核查 2026-10-14