乐于分享
好东西不私藏

基于Appium+Skill实现APP自动化测试实践案例

基于Appium+Skill实现APP自动化测试实践案例

之前我们分享过基于 Maestro 方案进行iOS自动化的方案,今天继续给大家带来另一套主流 App 自动化方案:Appium

而一提到 Appium,大家的第一反应往往是:

  • 环境配置麻烦、步骤多、坑也多;

  • 元素定位要靠自己扒页面,改一个控件就要改一堆脚本;

  • 用例、代码、报告各搞一套,很难在团队里长期维护。

那么,能不能像 Web 端一样,把 「页面探索 → 脚本生成 → 用例执行 → 报告输出」 整条链路,也封装成可复用的 Skill,让测试同学尽量少写代码、快速上手 iOS 自动化?

围绕这个问题,我最近基于 Appium + Skill,整理了一套 iOS 端自动化实践方案。今天这篇先带大家了解整体思路和使用案例。

核心概念介绍

在展开实操前,先快速了解几个关键词,后面看流程会轻松很多。

1. Appium 是什么?

Appium 是移动端主流的跨平台自动化框架,支持 iOS、Android。你可以把它理解成:用统一的方式,驱动手机上的 App 完成点击、输入、滑动等操作。

2. XCUITest 和 WDA 是什么关系?

Appium 没法直接操作 iOS 系统,需要借助苹果官方的 XCUITest 框架。实际落地时,还会用到 WDA(WebDriverAgent)——一个跑在 iOS 设备上的小服务,负责把 Appium 的命令「翻译」成 iOS 能执行的操作。

简单记:Appium 发指令 → WDA 翻译 → iOS 执行。

Skill执行流程

把 iOS 自动化拆成 四个可串联的 Skill 环节,覆盖从准备输入到查看报告的全过程:

完整实践案例

1、环境准备

  • xcode、ios模拟器安装

  • appium、xcuitest安装、启动

打开终端进行安装

npm install -g appiumappium driver install xcuitestappium driver list --installed   # 应含 xcuitest

执行结果:

启动appium

appium

3、Skill下载与导入

将相关skill包导入到AI工具里面

Skill获取方式

有开发能力的读者,可以参考文中流程自行编写适配自身业务的 Skill;需要现成可直接导入使用的完整 Skill 包,加入知识星球即可领取,同步获取全套 AI 赋能测试实战教程合集以及答疑服务~

4、快照&代码生成

输入:

格式:/appium-ios-capture-generate bundleId @测试用例

AI执行过程

  • 可以看到会去检测 xcode、node、appium、xcuitest等基础环境
  • 使用脚本读取excel文件
  • 打开模拟器
  • 对于相关的界面,进行操作,然后抓取快照

如下,这个是执行本次的测试用例所需要的快照信息

主要有4个文件

简单说明如下:  抓屏 → page_source.xml(原始树)→ elements.json(精简元素,写测试用)→ meta.json(这次抓屏的说明)

最终输出结果:产出python代码

具体内容如下:

每个用例会生成一个pytest方法,内部为执行步骤

按照不同的类别进行归类,如下:分别是认证、类别、详情的python代码

例如,下边这个,日记类别,就将日记的新增、修改、删除归类在同一个文件中

5、执行代码

输入:

/appium-ios-run-pytest

执行结果:

6、报告查看

输入:

执行结果:

小结

iOS 自动化难,难的不只是 Appium 本身,而是从环境、定位、脚本到报告整条链路的工程化落地。我把这套 Appium + Skill 方案,按「准备 → 抓快照生成 → 执行 → 报告」拆成可复用环节,目标很明确:让测试同学把精力放在用例设计上,而不是陷进环境配置和脚本细节里。

以上是今天分享的内容,基于 Appium + Skill 的 iOS 自动化完整方案(含环境配置、Skill 安装、实操案例及排坑说明),已整理在【Raina的AI&测试实战圈】知识星球,附带 skill 包,跟着步骤操作就可以上手。感兴趣的小伙伴可以加入了解哦~

如何加入我们?

复制链接到微信打开:https://t.zsxq.com/eQuvB

或扫描下方二维码,即可直接加入。

【加入学习圈,你将获得】

1️⃣ AI 赋能测试・从零实战落地教程

紧跟行业最新 AI 技术(Skills、MCP、Openclaw、Dify、AI IDE等),将其结合到软件测试全流程中提效,整理模块化学习路线 + 实操步骤+思路和踩坑经验等,零基础也能快速入门;圈内随时提问,Raina都会回答。

2️⃣ 全栈软件测试干货

分享软件测试各类型技术干货、高效工作方法、项目复盘、个人成长思考,适配不同阶段测试从业者。

3️⃣ 专属自研资料 & 工具包

《Raina 测试知识库》| 全套面试题库 | RainaTest 自研平台 | 视频教程 | 职场模板 + AI 工具合集网站等(持续更新,价值超入圈费)

4️⃣ 求职 & 晋升指导

面试技巧、求职经验、简历建议等。

5️⃣ 全年免费专属答疑

星球全年可免费向Raina直接提问,这里是一个纯技术交流的圈子,你可以就具体的技术难题、测试策略或职业发展向我提问

往期干货内容:

AI 赋能性能测试:全流程辅助 Skill 实践方案.....

测试提效必备:使用Skill一键将Axure原型转为标准化需求文档

测试人必备提效 Skill!禅道一键提Bug + 快速统计BUG....

测试提效必备!用例评审Skill来了....

基于Browser use+Skills实现UI自动化测试实战案例

基于Skills的接口自动化测试|新增 MySQL 断言,实现接口 + 数据库双校验

基于Skill的接口自动化测试方案|新增多接口串联 + 自然语言用例

基于playwright-cli +Skills实现UI自动化测试实战案例

测试工程师必备 Skills 合集:从需求→用例→报告全流程提效

AI驱动接口测试必备:一键生成标准化接口文档的skill(告别手动复制)

基于Midscene.js实现UI自动化测试的实践案例

接口自动化测试 Skills 合集:从接口用例生成->脚本执行->报告全流程提效

测试工程师必备:生成Excel/Xmind格式的测试用例skill

测试工程师必备:快速生成Jmeter脚本的skill

AI驱动UI自动化测试的4种实践方案对比(详细解析)