把 Agent 探索流程固化为移动端测试脚本
教程以 Flutter 应用演示如何将 agent-device 探索得到的操作保存为 .ad 脚本并重复执行。内容覆盖回放前状态准备、失败报告排查及 Agent 测试的 token 成本。
原文暂未完整获取,基于公开信息的快读
agent-device 的这篇教程把 Agent 探索过的移动端操作保存为 .ad 脚本,再按顺序回放。作者用 Flutter 应用演示了状态准备、失败排查和跨平台选择器修复,教程基于 agent-device 0.21.31。重点在于把已经走通的流程变成可重复执行的测试。
目前能确认什么
Agent 探索应用时,会反复读取屏幕、选择操作、检查结果;.ad 则把探索结果固定为命令列表。脚本可以录制,也可以手写,应用 ID 可通过 ${APP} 传入,方便复用到不同构建。
回放不会自动重置应用状态。
作者为首次启动流程单独编写了 runner,在回放前卸载、重装应用,并限制只能操作指定测试设备。首次授权是否已经完成,会直接影响脚本能否继续执行。
回放中断会报 REPLAY_DIVERGENCE,报告包含失败步骤、当前可操作元素和选择器建议,也提供从指定步骤恢复的命令。但报告提示不等于自动修复:作者仍需手动关闭 iOS 的 ATT 系统弹窗。
跨平台也有差异。同一个 Flutter 输入框在两端暴露的元素角色不同,作者最终给 Semantics 添加稳定标识,用 id="find-input" 完成匹配。
我的判断
我更看好这种「Agent 探索、脚本重复执行」的分工。固定流程不必每次重新选择操作,有机会减少重复探索消耗的时间和 token。
对开发者来说,稳定的语义标识值得作为测试接口维护;仅凭按钮文字和平台角色匹配,复用脚本容易遇到差异。
目前节选没有给出 token 成本明细,不能判断具体节省多少。原文也展示了需要人工处理的系统弹窗,因此还不能把这套流程理解为无人值守的跨平台回归方案。