Skip to content

使用 AI 和 ADB 自动验证 Android UI 界面

解决手动测试低效问题:利用 AI 驱动 ADB 命令,在 Android 模拟器上自动执行 UI 操作、解析界面布局并截屏验证,实现端到端的 UI 自动化验收。

为什么需要这个技能

在开发 React Native 或原生 Android 应用时,手动点击界面验证功能不仅耗时,且难以在每次迭代后保证所有路径的正确性。

传统的 UI 测试框架配置复杂,而通过 ADB(Android Debug Bridge)直接操作模拟器则更为轻量。本技能赋予 AI 能够通过命令行“看到”界面(解析 XML 布局)、“操作”界面(模拟点击输入)并“验证”结果(截屏与日志分析)的能力,将原本繁琐的验收流程自动化。

适用场景

  • 验证 React Native 或原生 Android 应用的 UI 变更。
  • 自动调试界面布局问题或交互 Bug。
  • 在手动测试速度过慢时,快速跑通功能路径。
  • 为 PR(拉取请求)文档自动生成功能截图。

核心工作流

1. 设备校准

在开始交互前,必须验证屏幕分辨率,以确保点击坐标的准确性:

bash
adb shell wm size

2. UI 状态探测

通过导出 uiautomator 布局文件来定位 UI 元素(如按钮、输入框)的精确坐标:

bash
adb shell uiautomator dump /sdcard/view.xml && adb pull /sdcard/view.xml ./artifacts/view.xml

AI 会在 view.xml 中检索 textcontent-descresource-id,并根据 bounds 属性 [x1,y1][x2,y2] 计算点击中心点。

3. 模拟交互

  • 点击adb shell input tap <x> <y>
  • 滑动adb shell input swipe <x1> <y1> <x2> <y2> <duration_ms>
  • 文本输入adb shell input text "<message>"
  • 按键事件adb shell input keyevent <code_id>(例如 66 代表 Enter)

4. 验证与报告

  • 视觉验证:通过截屏确认 UI 变化。
bash
adb shell screencap -p /sdcard/screen.png && adb pull /sdcard/screen.png ./artifacts/test_result.png
  • 分析验证:实时监控 JS 控制台日志以检测错误。
bash
adb logcat -d | grep "ReactNativeJS" | tail -n 20

下载和安装

下载 android_ui_verification 中文版 Skill ZIP

解压后将目录放入你的 AI 工具 skills 文件夹,重启工具后即可使用。具体路径参考内附的 USAGE.zh.md

你可能还需要

暂无推荐