中腾科技

一站式软件测试服务供应商

服务咨询热线:

139-2923-0114/186-0769-8987
4新闻中心

分析app自动化测试有哪些常见坑点?

文章出处:技术支持 责任编辑:东莞市中腾科技有限公司 发表时间:2026-08-28
  

app自动化测试的本质:脚本不直接操作手机屏幕,通过调用平台官方驱动,把指令下发给手机系统,由系统驱动去操作 APP 控件,模拟人的点击、输入、滑动,再把结果返回给脚本。

app自动化测试

下面就来看一看分析app自动化测试有哪些常见坑点?
一、环境类坑
1. adb 连接异常、设备离线
- 现象:脚本偶尔报找不到设备,执行中途断开
- 原因:USB 接触不稳、多个 adb 进程冲突、模拟器掉线、手机休眠
- 解决:`adb kill-server && adb start‑server`;关闭手机休眠;尽量固定设备;不要同时开 Airtest、Appium 多个工具抢 adb。
2. Appium 服务冲突,端口被占用
- 现象:启动报错 4723 端口占用
- 解决:杀掉占用端口进程;多设备并发启动不同端口的 appium‑server。
3. noReset /fullReset 配置踩坑
- 现象:每次运行 APP 数据被清空;或者缓存残留导致用例互相影响
- `noReset:true`:不重置应用,保留登录状态;多条用例可以连续跑;但旧缓存会干扰用例。
- `noReset:false`:每次跑完卸载重装,数据清空,用例隔离,但执行慢。
坑:用例之间不要依赖上一条用例的状态,尽量做好用例独立。
二、元素定位坑
1. id 重复、动态 id
- 现象:id 定位有时候能找到,有时候找不到;后台每次打开页面 resource‑id 随机变化
- 原因:部分第三方组件、webview 生成动态 id,每次启动 id 不一样
- 解决:放弃 id;改用 `accessibility_id(content‑description)`、xpath 文本定位;先不要用绝对 xpath。
2. 元素存在但是看不见(is_displayed=false)
- 现象:元素在控件树里存在,但是不在可视区域,点击报错
- 原因:控件还没渲染完成;控件在屏幕外;被其他弹窗遮挡
- 解决:显式等待**可见**`visibility_of_element_located`,不要用`presence_of_element_located`(只判断 DOM 存在,不判断是否显示)。
3. className 控件重复
- 现象:同一个 class 有多个控件,默认取第一个,点错按钮
- 解决:结合索引、父节点 xpath,不要单用 className。
4. toast 弹窗定位不到
- 现象:toast 一闪而过,很难捕获
- 解决:Appium 使用 xpath 匹配 toast 文本;缩短等待时间;toast 出现时间很短,不要加 sleep。
上一篇:无
下一篇:
下一篇:无

联系我们

公司地址:
广东省东莞市松山湖园区学府路1号
12栋808室
联系电话:
139-2923-0114 / 186-0769-8987
咨询软件测试服务方案