Appium 你用了多少年?
它从 2013 年到现在,12 年了。
12 年里,移动端自动化测试的格局基本没变------Appium 统治一切。
但说实话,Appium 不好用。
写个测试脚本,要找元素 ID、写 XPath、处理弹窗、适配各种屏幕。脚本写完比业务代码还长,UI 一改全崩。
12 年了,一直如此。
直到最近,我发现了一个开源项目------让我觉得移动端自动化测试的范式,可能真的要变了。
它叫 agent-device
Callstack 出品,MIT 开源,JPMorgan Chase、Expensify、Shopify 的团队都在用。

一句话介绍:它是一款开源给 AI Agent 用的设备自动化 CLI,iOS、Android、TV、桌面全覆盖,目前在Github上,该项目star数接近4k。
安装方式(Node.js 版本需大于22.12):
bash
npm install -g agent-device@latest
agent-device doctor
agent-device --version
agent-device help workflow
注意------它不是另一个 Appium。
Appium 的逻辑:你写脚本,一步步告诉它怎么点、怎么填。
agent-device 的逻辑完全不同:你把它交给 AI Agent(Codex、Claude Code),Agent 自己看屏幕、找按钮、做操作。
agent-device 只干一件事------当 Agent 的"眼睛"和"手"。
为什么我觉得它可能改变格局?
先说我的判断:不是技术比 Appium 更强,是思路根本不一样。
Appium 时代,测试的核心能力是"写脚本"------你得会 XPath、懂定位策略、处理等待逻辑。
agent-device 时代,测试的核心能力变成"描述意图"------你说"验证登录功能正常",Agent 自己看屏幕、找元素、点按钮、判断结果。

这不是优化,是范式转移。
就像从"手写汇编"到"用高级语言"------不是汇编不好,是抽象层变了。
三个我觉得很聪明的设计
第一,语义化引用。
agent-device 截取屏幕快照后,给每个可交互元素分配一个引用------@e1、@e2、@e3。
Agent 不需要写 XPath,只需要说"点击 @e3"。
bash
agent-device snapshot -i
# @e1 [heading] "Settings"
# @e2 [button] "Sign In"
# @e3 [text-field] "Email"
agent-device fill @e3 "test@example.com"
XPath 会因为 UI 改版而失效。但基于无障碍树的引用,稳定性高一个量级。
第二,证据收集不只是截图。
日志、网络流量、性能采样、崩溃上下文、React 渲染 profile------全自动收集。
这意味着 Agent 不只是"操作完了",还能自证清白。出了 bug 要复盘?证据链一条不少。

第三,探索变回放。
Agent 探索完一遍操作流程,自动录制成 .ad 脚本,之后 CI 反复跑。
探索时靠 AI,回归时靠脚本------两个阶段各取所长。
但别急着吹,它也有短板
第一,需要 AI Agent 驱动。
你得有 Codex 或 Claude Code。没有 Agent,它就是一个 CLI,价值砍半。
第二,吃 App 的无障碍标签。
它依赖 accessibility tree。如果 App 没做无障碍适配,元素全标"button",Agent 也抓瞎。
第三,生态还处在早期。
虽然已经有大厂在用,但文档、教程、社区最佳实践还在积累。碰到坑,你得自己趟。
我的判断
它不会立刻替代 Appium------但代表了 Appium 之后的方向。
Appium 解决的问题是"怎么让机器按步骤操作手机"。
agent-device 解决的问题是"怎么让 AI 像人一样看屏幕、理解界面、自主操作"。
这两件事,根本不在一个层面上。
未来两三年,移动端测试的核心能力,会从"写自动化脚本"转向"编排 AI Agent 做验证"。agent-device 不是终局,但它可能是推倒多米诺骨牌的那只手。
如果你在做移动端测试,建议现在就去 GitHub 看看,跑一遍 Demo。
别等到所有人都在用的时候,你才反应过来。
GitHub 项目地址:github.com/callstack/agent-device
以上,既然看到这里了,如果觉得不错,随手点个赞、在看、转发 三连吧,如果想第一时间收到推送,也可以给我个星标⭐~ 谢谢你看我的文章,我们,下次再见。