本文介绍 mobile-app-autotest 移动端 App 自动化 Cursor Skill,涵盖架构、八步交付流程、定位策略与实操命令,附完整配图。

一、App 测试的真实困境
做过 App 测试的朋友,应该都经历过这种崩溃。
UI 改了一个按钮,第二天回归,二十条用例集体报红。日志满屏 XPath 找不到元素,然后就开始猜,是改版了?WebView 没切回来?还是真机环境又抽风了?
更难受的是,团队里不缺 Appium 脚本,缺的是能长期维护的测试工程。用例条数不少,但没人说得清覆盖了哪些业务流程,Android 和 iOS 各写一套,交接成本极高。
让 AI「帮我写 App 自动化」,它确实能给你跑通的 case。但跑完一次就没人敢动,没有清单、没有分层、没有质量门禁。
我把 mobile-app-autotest 这套 Cursor Skill 完整跑了一遍,效果比我预期离谱得多。它不是堆脚本,而是把「摸清现状 → 列清单 → 生成资产 → 自检 → 中文交付」整成标准流水线。
二、它和普通 AI 生成有什么区别?

普通 AI 生成 | mobile-app-autotest |
|---|---|
给几条能跑的 case | 先出 manifest 清单,再生成 Screen / Flow |
XPath 满天飞 | 定位金字塔,优先 accessibility id |
Android / iOS 混写 caps | 分平台 Options + 跨端 Screen |
失败靠人工猜 | fault-diagnosis 决策树 + 自动截图 |
不知道环境缺什么 | check_mobile_env.sh 一键体检 |
你拿到的是可复查、可交接、可扩展的 mobile-tests 工程,不是一次性脚本。
Skill 路径 .cursor/skills/mobile-app-autotest/,本质是「工作说明书 + 脚本 + 模板 + 参考文档」。
协作层,SKILL.md 定义八步流程和完成标准
脚本层,check_mobile_env.sh 环境体检,scaffold_manifest.py 生成清单
产物层,app-test-manifest.json + mobile-tests/ + 中文交付摘要
默认 Appium 3.x,Android 用 UiAutomator2,iOS 用 XCUITest,语言默认 Java + TestNG。
步骤 1-3,摸清现状,判断本地模拟器、USB 真机还是云网格。
步骤 4,清单先行(灵魂步骤)

产出 screens[]、flows[]、risks[],后续所有 case 以它为事实来源。
步骤 5-6,生成测试资产

步骤 7-8,环境自检 + quality-rubric 五维打分,满分 100,低于 70 必须补全。
维度 | 权重 | 看什么 |
|---|---|---|
可运行性 | 25 | 起服务即可跑通 P0 |
定位健壮性 | 25 | P0 无裸 XPath |
可维护性 | 20 | Screen/Flow 分层 |
稳定性 | 15 | 无 sleep,失败自动截图 |
覆盖透明度 | 15 | 有 manifest,报告标风险 |
三、三层架构,一眼看懂

四、八步交付闭环

L1 accessibility id,跨端首选
L2 resource-id / name
L3 iOS predicate / class chain
L4 Android UiAutomator
L5 XPath 仅兜底,须注释原因
禁止 Thread.sleep 和写死坐标。这一条 alone 就能省掉大量维护成本。
环境体检

Cursor 触发示例

Agent 按需加载 Android 权限、iOS WDA、混合 WebView、云网格等 references,不会一次性塞爆上下文。
前置准备
安装 Node.js、Python 3.8+,Android 需 JDK + SDK,iOS 需 macOS + Xcode
全局安装 Appium 及 uiautomator2 / xcuitest 驱动
准备好 APK / IPA 或云网格包地址
踩坑提醒
先清单后 case,跳过 manifest 后面全偏
把 accessibility id 当协作项,推动开发加 testID
Android / iOS 分开 caps,禁止混用
混合 App 测完 H5 必回 NATIVE_APP
失败先走 fault-diagnosis,一次只改一个变量
云/本地 Hub 集中写进 SessionFactory
五、定位金字塔,告别 XPath 地狱

六、实操上手

七、谁适合用?
非常适合 从零搭自动化、双端交付、混合 App、云真机回归、需要中文简报给领导的团队。
需审慎 已深度绑定 Detox / Maestro,或纯游戏引擎自定义 UI 的项目。
八、写在最后
测试提效拼到最后,不是「会不会写脚本」,而是有没有可复用的工程方法论。
mobile-app-autotest 把「先摸底、再清单、再分层、再门禁」打包成 AI 能稳定执行的流程。
你不需要成为 Appium 专家才能起步,但跑通一遍之后,会明显感觉到 App 自动化从「不敢维护的脚本堆」变成了「有清单、有评分、有摘要的测试工程」。
这种变化,真的挺离谱的。
资料自取
Skill 完整包 + 实操手册 已整理在飞书知识库,解压即用。
以上,如果觉得不错,随手点个赞、在看、转发三连吧。
谢谢你看我的文章,我们,下次再见。
夜雨聆风