工具介绍
点点通是一款运行在 Android 设备本地的 UI 自动化测试工具。它通过 AccessibilityService 读取当前窗口和控件树,通过 MediaProjection 获取屏幕图像,并结合 OpenCV 图片模板匹配与 ML Kit / Paddle OCR 完成定位和操作。代码中已实现的动作包括点击、双击、长按、滑动、滚动、输入、查找、等待、条件判断、检查、Toast 校验、OCR 点击、foreach 遍历、启动/重启应用和截屏。任务执行后,工具会把任务结果、脚本与步骤状态、运行日志以及可选截图写入本地数据库和文件目录。它还支持将脚本或任务连同关联图片资源打包为 ZIP 进行导入、导出和分享。就异常检测范围而言,代码明确体现的是基于步骤和任务预期结果的失败判断,例如控件未找到、状态不匹配、等待超时、搜索失败、Toast 不匹配或步骤执行失败;代码中未明确体现目标 App 崩溃、ANR、性能指标或网络指标的专项分析。
核心能力
通过悬浮录制窗口在真机上选择节点、配置动作并保存脚本,再将多个脚本组合成支持前置、主流程和自动触发逻辑的任务。
同一执行链路可混合使用无障碍 XPath、图片模板匹配和 OCR 文本识别,并对控件状态、Toast 文本、等待结果和查找结果做步骤级判断。
任务执行后可查看任务结果、脚本步骤状态、运行日志和截图;脚本与任务可连同关联图片资源打包为 ZIP,并通过本地 HTTP 接口读取或转换。
适用测试场景
- 在 Android 真机上录制和回放登录、导航、表单填写、设置切换等重复 UI 流程。
- 针对资源 ID 不稳定或控件树不易直接定位的页面,结合 XPath、图片模板匹配和 OCR 完成定位与操作。
- 执行基于预期结果的冒烟或回归检查,例如控件存在性、控件状态、Toast 文本、等待结果和查找结果。
- 把多个脚本编排成前置脚本、主脚本和自动触发脚本组成的任务,并按重试、循环或定时方式执行。
- 处理验证码输入等移动端测试场景,在授权短信权限后自动提取近期短信中的验证码并填充到输入框。
环境与依赖
- 运行平台
- Android 本地应用,面向已安装 Android App 的界面自动化。
- 系统范围
- 代码配置最低支持 Android 6.0(API 23),targetSdk 为 Android 15 / API 35。
- 接入方式
- 主要通过 App 内界面、悬浮录制窗口和无障碍服务接入;同时内置本机 HTTP 服务(端口 8399),提供静态页面和 `/api` 接口。
- 工具包
- script_v1.6.8.apk
权限与依赖
- 必需:无障碍服务,用于读取界面树、监听事件和执行点击、滑动、输入等动作。
- 必需:悬浮窗权限,用于录制窗口、节点选择窗口和运行状态窗口。
- 必需:MediaProjection 截屏授权,用于 OCR、图片匹配、步骤截图和显式截屏动作。
- 启动流程中会请求:存储管理权限和通知权限,用于导入导出文件、访问关联资源和维持前台服务。
- 可选:ADB 连接,用于 shell 启动/重启应用、自动尝试配置无障碍,以及启用 `minitouch` 输入路径。
- 可选:启用应用自带输入法,用于文本输入。
- 可选:短信读取权限,用于验证码自动填充输入。
- 可选:精确定时闹钟与忽略电池优化,用于定时或周期任务。
支持范围与说明
明确支持
- 这是一个 Android APK 项目,应用包名为 `com.test4399.script`,应用名为“点点通”。
- 代码配置 `minSdk=23`、`targetSdk=35`,并包含 `armeabi-v7a` 与 `arm64-v8a` 本地库。
- 核心执行依赖 AccessibilityService、MediaProjection、Room、本地文件目录、OpenCV、ML Kit OCR 和 Paddle OCR。
- 支持两类输入执行路径:无障碍手势路径和 `minitouch` 路径。
- 支持脚本录制、脚本编辑、任务编排、一次性定时任务和周期任务。
- 动作集合明确包括点击、双击、长按、输入、滚动、滑动、查找、等待、条件、检查、OCR、Toast、foreach、启动应用、重启应用和截屏。
- 定位方式明确包括 XPath、坐标、图片模板和 OCR 文本。
- 任务报告明确包含任务结果、脚本/步骤状态、运行日志和可选截图,并保存在本地数据库与文件目录中。
- 脚本和任务支持 ZIP 导入、导出与分享,并包含关联图片资源。
- 应用启动时会启动本机 8399 端口 HTTP 服务,已实现 `/api/dump`、`/api/script`、`/api/scripts`、`/api/scriptAttachments`、`/api/scriptConvert`、`/api/task`、`/api/tasks`、`/api/taskAttachments` 和 `/api/taskConvert` 等接口。
- 异常检测范围在代码中明确体现为步骤和任务级的预期匹配失败,不等同于崩溃、ANR 或性能监测平台。
- 代码中未明确体现测试报告导出为 PDF、CSV、Excel 或上传到远端服务。
合理推断
- 它更适合 Android 真机上的本地 UI 自动化和流程回放,而不是集中式测试管理或云端设备平台,因为执行、存储和报告都在设备侧完成。
- 内置 HTTP 服务更像本地辅助访问或集成接口,因为它暴露的是读取、附件和转换类接口,代码中未明确体现远端调度平台。
- 短信验证码自动填充更适合移动端登录或注册类流程,因为输入动作里只实现了基于短信内容提取验证码的填充逻辑。
- 执行链路完全在 Android 设备本地完成,核心依赖是无障碍、截屏、Room 数据库和本地文件目录,而不是外部测试服务器。
- 定位方式是混合型的,既支持基于无障碍树的 XPath,也支持基于 OpenCV 的图片模板匹配和基于 ML Kit / Paddle 的 OCR 文本识别。
- 内置录制、编辑、任务编排、定时执行、ZIP 导入导出与本地接口能力,更适合维护 Android 端可复用脚本资产,而不是作为通用跨平台测试平台。
下载与使用说明
- 版本
- v1.6.8
- 工具包
- APK
- 大小
- 74.7 MB
- 更新时间
- 2026-05-22
- 下载
- 登录后下载
工具以本地运行和真实 QA 工作流为前提设计,适合安卓 App 专项测试,不依赖外部测试平台。