Android 多设备 UI 自动化测试与智能任务调度系统
本项目旨在解决批量 Android 终端执行重复性业务流程时人工效率低、定时精准度差、多设备难以协同等痛点。系统整合设备群控、视觉识别、分布式任务调度等技术,构建了一套高可用的自动化操作平台,适用于需要大规模设备并发执行定时或即时任务的各类业务场景。
软件核心功能涵盖:多设备自动发现与并发管理;基于 Redis 的分布式任务队列与优先级调度;定时任务与即时任务双模式支持;基于 OCR 文字识别与 OpenCV 图像模板匹配的 UI 元素智能定位;可视化参数配置与执行状态监控;异常重试与屏幕变化检测等容错机制。
核心功能模块包括:
设备管理模块:通过 ADB 协议自动扫描局域网内在线 Android 设备,动态维护设备池,支持多设备并行接入与状态监控。
视觉识别模块:集成阿里云 OCR 服务实现全屏文字识别与坐标提取,同时基于 OpenCV 实现图像模板匹配,提供双重元素定位策略,适配不同 UI 场景。
任务调度模块:采用 Redis 有序集合作为中央任务队列,以时间戳为 Score 实现任务的精准排序;Dispatcher 进程轮询分发,支持即时执行与"预执行-正式执行"两阶段复杂时序逻辑。
自动化引擎模块:基于 uiautomator2 封装点击、滑动、应用启停、截图等原子操作,支持区域限定点击、偏移点击、索引点击等高级交互模式。
配置与监控模块:基于 TKinter 构建 Windows 桌面配置端,支持业务参数录入、设备选择、功能模式切换、实时日志展示与任务状态反馈。
业务流程描述:用户通过可视化界面配置目标业务流程参数(如区域、分类、目标对象、索引等)及期望执行时间;系统校验参数后生成结构化任务并序列化存入 Redis 队列;Dispatcher 按时间策略轮询,将到期任务推送至对应设备的 Worker 进程;Worker 驱动设备完成解锁、应用启动、页面导航、元素识别与点击、结果确认等全链路操作;最终系统生成独立日志文件并反馈执行结果。
大数据