栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

【自动化测试】monkey压力测试

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【自动化测试】monkey压力测试

Monkey事件注入机制:是通过framework层的hidenApi(如:activemanager,inputmanager,windowmanager)获取系统服务
inputmanagaer(触摸事件)–屏幕以及物理键的触摸,滑动,点击事件。
activitymanager–调用android系统组件的事件
windowmanager–比如转屏

11大类事件:
  1. 触摸事件:由ACTION_DOWN–>一个ACTION_UP组成
    –pct-touch参数来配置此事件比例

  2. 手势事件:由一个ACTION_DOWN–>多个ACTION_MOVE–>一个ACTION_UP组成
    –pct-motion来配置其百分比

  3. 二指缩放事件(双指在屏幕同时按下并滑动,最后抬起):由一个ACTION_DOWN&ACTION_POINTER_DOWN–>多个ACTION_MOVE–>一个ACTION_UP&ACTION_POINTER_UP组成
    –pct-pinchzoom参数来配置此事件的百分比

  4. 轨迹事件
    –pct-trackball参数来配置其事件百分比

  5. 屏幕旋转事件:由一个rotation事件组成,degree表示的是旋转方向,顺时针方向,0表示90度的方向,1:180度、2:270度方向、3:360度方向
    –pct-rotation参数来配置其比例

adb shell monkey -p com.jiuxing.token -v -v --pct-rotation 50 100

  1. 基本导航事件:是指上下左右按键操作。由一个Key的ACTION_DOWN和ACTION_UP组成
    –pct-nav参数来配置其百分比

  2. 主要导航事件:ui界面发生变化。如back key,menu key等
    –pct-majornav来配置其百分比

  3. 系统按键事件:如home,音量键
    –pct-syskeys参数来配置其百分比

  4. 启动activity事件:–pct-appswitch参数来配置其事件百分比

  5. 键盘事件:输入框键盘弹起
    –pct-flip参数来配置其事件百分比

  6. 其他类型事件:如具体的数字,字母键等
    –pct-anyevent参数来配置其百分比

monkey日志分析

保存到pc:adb shell monkey [options] < count> > [pc保存地址]
保存到手机中:adb shell monkey [options] < count> > /sdcard/monkey.txt
运行日志和异常日志分开存放: monkey [options] < count> 1>/sdcard/monkey.txt 2>/sdcard/error.txt
0:标准输入
1:标准输出
2:标准错误输出
monkey输出日志一般为4类信息:测试命令,伪随机事件,异常信息,monkey执行结果信息。
测试结果分析:
a、程序无响应,ANR问题:在日志中搜索“ANR”
b、崩溃问题:在日志中搜索“CRASH”
c、其他问题:在日志中搜索”Exception”

查找手机上的安装包包名:

adb shell pm list package查看手机上所有安装包
adb shell pm list package -3 查看第三方安装包
adb shell pm list package -s 查看系统包
adb shell pm list packages -e “要搜索的内容” 查看启动包中搜索的包
adb shell dumpsys window | grep mCurrentFocus 获取当前打开的APP包名(前面的为包名,斜杠后面的是当前启动的acivity)

Monkey 命令基本参数的介绍
  • -p:指定包,若不指定则在整个系统中执行
    指定多个包执行10次:adb shell monkey -p 包名 -p 包名 10
  • -v 用于反馈日志详细程度
    adb shell monkey -p 包名 -v 10 —level 0 默认级别,仅提供启动,测试完成和最终结果等
    adb shell monkey -p 包名 -v -v 10 —level1 较为详细的日志,包括每个发送到actvity事件
    adb shell monkey -p 包名 -v -v -v 10 —level2 提供最详细的日志,包括了测试中过选中/未选中的activity
  • -s:用于指定伪随机数生成器的seed值
    命令:adb shell monkey -p 包名 –s seed值 执行次数
    如果seed值相同,则两次Monkey测试所产生的事件序列也相同的,示例:
    测试1:adb shell monkey -p com.kugou.android –s 1540475754297 100
    测试2:adb shell monkey -p com.kugou.android –s 1540475754297 100
  • –throttle:指定用户事件的操作间隔时延
    命令:adb shell monkey -p 包名 --throttle 3000 100
  • –ignore-timeouts:忽略超时错误
  • –ignore-crashes:忽略crash
  • –ignore-security-exceptions 忽略许可错误
  • –monitor-native-crashes,用于指定是否监视并报告应用程序发生崩溃的本地代码
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/939860.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号