UI自动化稳定性提升

一、硬件相关

  1. 自动化手机:

    1. 一键卸载所有可卸载软件:adb shell pm list packages | cut -d':' -f2 | tr '\r' ' ' | xargs -n1 -t adb uninstall

    2. 关闭安全键盘、系统自动更新、电池优化等

    3. 定时重启

    4. 手机异常情况监控:内存不足监控及清理、ATX卸载监控等,异常无法处理时及时下线

    5. 使用背夹,固定温度,避免长时间运行,温度过高down掉

  2. 电脑:

    1. 使用性能好一点的专用电脑运行自动化

    2. 磁盘异常告警&定期清理磁盘空间

  3. 网络

    1. 手机使用专有WiFi,避免WiFi连接数过高导致网络卡顿或异常

    2. 电脑使用网线连接,减少网络异常引起的问题

  4. 存储位置

    1. 专用机架,手机固定于机架上

    2. 自动化设备存放于角落,无人访问的地方,减少人为影响

二、软件相关

  1. 元素识别:
    1. 尽量选取稳定的识别方式,如OCR
    2. 对识别元素无强要求,如点击空白区域关闭页面等,尽量使用屏幕百分比定位
    3. 元素本身变动大,但是页面内有相对稳定的元素,使用相对稳定的元素+offset(根据元素位置偏移)识别
    4. 为了提高元素识别率,可以控制识别区域
  2. case隔离&最小化:case尽可能最小化,尽可能分开,尽量通过schema进入被测页面,控制操作路径
  3. 增加等待时长:等待页面或者操作稳定后进行下一步
  4. 机器兼容处理:如低端机增加等待时长等,尽量选取通用方法
  5. 重试策略:case运行失败重试,任务运行异常/失败重试,wda重试
相关推荐
会写代码的饭桶36 分钟前
Jenkins 实现 Vue 项目自动化构建与远程服务器部署
vue.js·自动化·jenkins
Super Rookie3 小时前
Tomcat 自动化脚本安装方案
运维·tomcat·自动化
qinxue7223 小时前
Jenkins自动化配置--CICD流水线
运维·自动化·jenkins
weixin_3077791312 小时前
Clickhouse导出库的表、视图、用户和角色定义的SQL语句
开发语言·数据库·算法·clickhouse·自动化
文静小土豆13 小时前
Ansible 自动化部署K8S1.34.1
kubernetes·自动化·ansible
2501_915909061 天前
原生 iOS 开发全流程实战,Swift 技术栈、工程结构、自动化上传与上架发布指南
android·ios·小程序·uni-app·自动化·iphone·swift
紧固视界1 天前
机械臂装配自动化推动紧固件设计革新
运维·自动化
Rhys..1 天前
python自动化中(包括UI自动化和API自动化)env的作用和使用
python·ui·自动化
成成成成成成果1 天前
Selenium八大元素定位实战指南
功能测试·自动化
将车2441 天前
自动化测试脚本环境搭建
python·测试工具·自动化