程序聚合 软件案例 Android 多设备 UI 自动化测试与智能任务调度系统

Android 多设备 UI 自动化测试与智能任务调度系统

2026-06-26 00:55:07
行业:大数据
载体:Windows应用
技术:Python

业务和功能介绍

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

项目实现

整体架构采用"调度中心-执行节点-消息队列"三层分布式设计。调度中心(Dispatcher)负责任务轮询、设备状态检查与任务分发;执行节点(Worker)以独立操作系统进程运行,通过 multiprocessing.Queue 接收任务并调用自动化引擎;Redis 作为中央消息队列,利用 Sorted Set 按时间戳排序,天然支持定时任务的优先级调度与延迟消费。
各模块技术选型如下:
设备通信与 UI 自动化:uiautomator2 提供高层 Android UI 操作 API,ADB 提供底层设备连接与 Shell 命令支持;
视觉识别:阿里云 OCR API(RecognizeAllText)负责文字检测与识别,返回 Block 级坐标与置信度;OpenCV(cv2.matchTemplate)负责图像模板匹配,采用 TM_CCOEFF_NORMED 算法,置信度阈值设为 0.65;
任务调度与状态机:Redis 有序集合存储任务 JSON,score 为 Unix 时间戳;通过 pre_ran、pre_run_only、immediate 等状态标记实现预执行与正式执行的流程切换;
桌面端界面:TKinter 实现跨平台 Windows 应用,支持 Combobox 设备选择、Entry 参数录入、Radiobutton 功能模式切换、Label 实时状态更新;
日志与持久化:按"设备 ID + 业务参数 + 时间戳"命名规则生成独立日志文件,支持多设备并发时的日志隔离与追溯。
我负责系统整体架构设计与全部核心模块的开发实现。量化成果包括:独立完成 5 个 Python 模块(OCR 工具、Dispatcher、Worker、业务逻辑、GUI)的开发与联调;实现单调度中心对多设备并发支持(实测 4 台设备同时稳定运行);OCR 接口封装后识别成功率达 95% 以上;图像模板匹配平均响应时间低于 2 秒;定时任务调度误差控制在 1 秒以内;系统累计无故障运行时长超过 200 小时。
开发过程中遇到的关键难点及解决方案:
多设备并发端口冲突:uiautomator2 默认使用固定本地端口,多 Worker 进程同时启动会产生端口抢占。解决方案为每个 Worker 启动时随机分配 19008–19999 范围内的独立端口,通过 settings.proxy_port 动态注入,实现进程级网络隔离。
OCR 返回格式与业务框架兼容:阿里云 OCR 返回的 BlockPoints 为 JSON 对象数组,而业务框架期望的是 OpenCV 风格的 (x, y) 元组列表。解决方案是封装 OCR 适配器类,在 readtext 方法内部完成格式转换,对外暴露与原生框架一致的 (box, text, score) 三元组接口,实现零侵入式替换。
复杂时序任务的精准

示例图片视频


fz2026
30天前活跃
方向: 爬虫/脚本-爬虫/脚本、
交付率:100.00%
相似推荐
公司网站制作-zhongxinyouyou.com
核心功能: 产品管理:支持上架国内游、出境游、票务、定制主题文旅产品,可维护行程、价格、库存、套餐规格,设置不同渠道供货价、零售价,产品上下架、版本管理。 渠道分销体系:代理商账号分级管理,设置不同渠道佣金比例,渠道商在线选品、分销推广,自动核算分销佣金,支持佣金结算、账单明细查询。 订单交易管理:客户在线下单,完整订单流程(下单、支付、确认、退改、核销),支持订单状态跟踪,处理退单、改单业务,留存业务记录。 财务管理模块:订单对账、渠道佣金统计、资金流水,生成业务账单,区分供应商结算、渠道分成、营收统计。 数据看板:产品销量、渠道业绩、订单数量、营收报表,多维度数据统计,导出报表辅助经营决策。 账号权限体系:区分平台管理员、供应商、渠道代理商不同角色,做数据与操作权限隔离。 配套辅助功能:资讯公告发布、客户留言反馈、协议电子存档,适配 PC 端访问,支持域名独立部署。 业务价值: 帮助文旅企业快速搭建线上分销业务,不需要从零开发系统,实现旅游产品数字化流转,高效管理下游渠道,减少人工对账成本,提升旅游产品推广成交效率。
toc 平台出境游,展示公司实力与案例,客服。-zhongxinyouyou.com
全栈开发工程师,可独立承接网站搭建、各类 APP 软件开发、多类型游戏开发业务。熟悉前后端整套技术栈,兼顾产品功能实现与交互体验,善于对接实际业务需求,从需求梳理、编码开发到上线交付一站式完成,高效落地各类定制化开发项目。
企业级流程中台( 流程中心)
面向Go-To-Market)业务的企业级流程中台,为价格审批、订单审批等多类业务提供统一的流程定义、审批流转与权限管控能力,并对接 外部系统,替代各业务系统各自实现审批逻辑的旧模式,实现流程能力的平台化、可配置化复用。
猿急送兼职项目智能筛选爬虫系统
1. 项目有哪些具体功能模块: ① 爬虫抓取模块(scrape_lightweight.py):基于 curl_cffi 异步并发,模拟 Chrome 131 浏览器指纹,自动轮转代理池,支持断点续爬,可抓取猿急送平台所有兼职项目数据(标题、预算、工时、状态、描述等)。 ② 智能过滤模块:内置黑名单关键词库,自动排除高难度(架构/专家/底层)、违规敏感(翻墙/刷单/赌博)、硬件 IoT、游戏开发等不适宜大学生接取的项目。 ③ 技术分类模块(classify.py):根据项目描述中的技术关键词,自动将任务归类为爬虫/Python脚本/前端/Web/小程序移动端/后端接口/AI智能体/测试质检/嵌入式IoT/工具脚本等 10 个技术方向,并分 Sheet 输出。 ④ 学生项目筛选模块(filter_student_projects.py):在过滤基础上,进一步筛选预算 ≤500元、非驻场的项目,按预算升序排列,输出适合大学生的项目清单。 ⑤ 代理池模块(proxy_pool.py):自动从快代理、free-proxy-list 抓取免费代理,连通性测试后按成功率加权随机选取,失败 3 次自动拉黑,定期恢复。 2. 项目的主要功能描述: 本项目解决大学生在猿急送等兼职平台上"找项目难、筛项目累"的问题。用户只需运行脚本,即可自动获取全部可投递项目并导出 Excel,同时一键生成按技术方向分类的 Sheet 和经过严格过滤的学生友好项目列表。相比人工逐页浏览,效率提升数十倍;相比人工筛选,避免接到超难度或违规项目。项目结构清晰、依赖简单(仅 Python 4个库),可作为高校课程设计/综合实验的优秀实践案例,完整体现了网络爬虫、数据清洗、分类算法、文件处理等多项核心技能。
美妆电商秒杀与会员中台系统-花漾商城
1.立项背景和目标:传统电商平台流量红利见顶,为提升用户粘性并应对大促峰值流量,公司决定自研一套集会员等级体系与限时秒杀于一体的中台系统。目标支撑日常10万日活,秒杀场景下QPS不低于5000。 2.软件功能与核心模块:系统包含会员积分成长体系、任务中心、以及核心的秒杀抢购模块。支持后台灵活配置秒杀场次、库存及价格策略。 3.业务流程与路径:用户登录后通过首页广告位进入秒杀场次 -> 点击抢购触发库存预扣 -> 排队生成订单 -> 支付回调后异步扣减真实库存并发放积分。
帮助文档   Copyright @ 2021-2024 程聚宝 | 浙ICP备2021014372号
人工客服