A公司物料替代测试系统 v1.7:从需求到 exe/apk 的 AI 辅助全链路实践

A公司物料替代测试系统 v1.7:从需求到 exe/apk 的 AI 辅助全链路实践 ## 背景 物料替代验证以往依赖人工逐项跑 ADB 命令、Excel 记录、多机并行难协调。我在 Cursor 中从需求描述出发,**独立完成了** Windows 桌面客户端、Android 本机压测 APK、NDK 交叉编译工具链、全量 UI 自动化与发布流水线。 ## 系统定位 面向安卓播放盒/板卡的 **物料替代自动化测试平台**,核心能力: | 能力 | 说明 | |------|------| | ADB 编排 | 多设备并行、队列模板、JSON 导入导出 | | 测试项注册表 | CPU/DDR/eMMC/USB/网络/音频/RTC/稳定性等 | | 进度监控 | 每设备独立进度条、HTML 报告 | | 模拟设备 | 无真机可演示全流程 UI | | 发布 | Windows exe + Android apk + PDF 手册 + 演示视频 | 当前发布版本 **v1.7.2**。 ## 技术架构 ``` main.py → CustomTkinter UI ├── nova_test/runner/engine.py # 调度引擎、会话令牌防串台 ├── nova_test/tests/*.py # 各测试项实现 ├── nova_test/adb/ # 设备探测、无线 ADB ├── bin/ + tools_src/ # arm64/arm32 交叉编译 bin └── android_app/ # Kotlin 本机压测 APK ``` ### 典型测试项 - **emmc.dd / emmc.stress / emmc.fio**:存储顺序读写与 24h 级压力 - **ddr.memtester**:内存稳定性 - **cpu.stress**:CPU 负载 - **stability.reboot / stability.relay**:重启循环、继电器循环 - **probe.device**:设备信息快照 ## AI 辅助开发闭环 在 Cursor 中的典型工作流: 1. **输入需求**(Wiki/Excel/口头描述)→ AI 生成测试项 schema、参数面板、帮助文案 2. **自写 GUI**:CustomTkinter + 主题统一,懒加载摄像头/OpenCV 模块加速启动 3. **自配编译环境**:`tools_src/build_android_bins.ps1` 编译 memtester、fio、stress 等到 `bin/arm64` 4. **自写 UI 自动化**:`scripts/run_full_ui_automation.py` 自动点遍功能页,输出截图、录屏、PDF 手册 5. **Bugfix 迭代**:模拟 ADB 设备 `192.168.3.100:5555` 无真机回归 6. **打包发布**:PyInstaller exe + Gradle apk + `publish_release.py` 同步到交付目录 一键命令: ```bat scripts\run_automation_and_release.bat ``` 输出:`tests/full_automation_<时间戳>/` 含 logs、screenshots、video、docs(PDF)。 ## v1.7.x 亮点 - 测试编排:保存队列 / 模板 / JSON 导入导出 - 流程模板横向滑动,查看测试项详情 - 压力测试挂测参数:可配置时长;CPU/内存支持探测值 - 多队列切换性能优化 - 网络 ADB 序列号含 `:` 时报告路径自动转义 ## 工程实践要点 1. **会话令牌**:重复点「开始」不与上一轮任务串台 2. **线程安全进度**:设备进度加锁,避免 UI 乱跳 3. **Win7/10/11 兼容**:字体回退、子进程无窗口 4. **预热启动**:启动屏期间多线程加载注册表与引擎,约 1.6s 进主界面 ## 小结 这套系统证明:**测试工程师 + Cursor AI** 可以独立完成「需求 → 客户端 → 跨平台 bin → 自动化 → 文档视频 → 交付包」的全链路,把物料替代从手工 ADB 升级为可规模化挂测平台。 > 本文为个人开源实践分享,文中 A公司 为脱敏代称,不涉及客户机密协议与未公开参数。

相关推荐
2601_962099084 小时前
python flask sqlalchemy连接数据库流程介绍
数据库·python·flask·教程·sqlalchemy
2601_962293244 小时前
python接口自动化(二十八)--html测试 报告——下(详解)
python·接口自动化·编码问题·htmltestrunner·报告优化
I'mChloe4 小时前
群晖部署 image-matting:把人像去背景做成一个随开随用的 Web 工具
android·前端
千里马-horse4 小时前
第 61 章:设备策略与 Android 企业版
android·aosp
烂蜻蜓4 小时前
Flask入门教程(附录):模板渲染API——Jinja2集成全解析
后端·python·flask
2501_915106324 小时前
Flutter iOS混淆打包详细教程与步骤
android·flutter·ios·小程序·uni-app·iphone·webview
2601_962387824 小时前
Python CUDA 编程 - 2 - Numba 简介
python·numpy·cuda·jit编译器·numba
三少爷的鞋4 小时前
Android 架构演进:从生命周期事件到结构化任务
android
一笑的小酒馆12 小时前
AndroidKMP之网络请求
android
智能体与具身智能13 小时前
TVA具身智能的概念、架构与应用(19)
人工智能·python·具身智能