Android Money测试基础一

1.什么是monkey

Monkey是一个命令行工具,使用安卓调试桥ADB()来运行它,模拟用户触摸屏幕、滑动Trackball、按键等随机事件流来对设备上的程序进行压力测试,检测程序多久的时间会发生异常,可以根据获取的log信息进行修复。

2.环境搭建

需要安装java JDK、androidSDK 以及相关环境配置

Java JDK环境配置:计算机 → 属性 → 高级系统设置 → 环境变量

2.1新建系统变量,名称:JAVA_HOME

路径:JDK的安装路径,找到JDK的安装目录,然后复制路径,粘贴过来就好

2.2然后找到path变量,输入%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin

2.3新建系统变量,名称:CLASSPATH(java加载类的)

路径:%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar(由于这个引用的是相对路径,直接复制过去就可以了)

2.4sdk环境配置:在Path变量中添加 E:\sdk\adt-bundle-windows-x86-20130917.467161976\adt-bundle-windows-x86-20130917\sdk\platform-tools(这是我的安装路径)

3.Monkey的一般使用步骤

3.1连接手机:

将手机设置为调试模式,开发者选项->usb调试选上

确认设备(模拟器或者真机)是否连接成功(需要安装驱动,可下载豌豆荚,连上手机后会自动安装)

命令:adb devices,出现设备号则表示连接成功


3.2确定待测应用的包名

方法1:输入命令:adb shell dumpsys activity | find "mFocusedActivity"

  得到包名为com.eastmoney.haitunlive


方法2:adb shell dumpsys window w | findstr \/ | findstr name=   //先打开需要查找的apk后,再敲入以上命令

方法3:adb shell pm list package-f  获取手机内所有apk对应的包名和路径

3.3执行monkey测试命令:adb shell monkey -p com.eastmoney.haitunlive -v -v 200

这个命名的意思就是,向浪客app发送200次随机事件流操作,且打印日志

Android Money测试基础一_第1张图片

Monkeyfinished表示事件执行完成

4.Monkey的常见命令

  4.1.-help 查看monkey用法

  4.2. -p

   用于约束限制,用此参数指定一个或多个包。指定包之后,Monkey将只允许系统启动指定的APP

例: adb shell monkey -p com.eastmoney.haitunlive-v 100

  -v 用于指定反馈信息级别(信息级别就是日志的详细程度),总共分3个级别

-v 仅提供启动提示、测试完成和最终结果等少量信息

-v -v 提供较为详细的日志,包括每个发送到Activity的事件信息

-v -v -v 最详细的日志,包括了测试中选中/未选中的Activity信息

4.3. -s 用于指定伪随机数生成器的seed值,如果seed相同,则两次Monkey测试所产生的事件序列也相同的。 

4.4. --throttle <毫秒>  

在事件之间插入固定的时间延迟,可以使用这个设置来减缓Monkey的运行速度,如果你不指定这个参数,则事件之间将没有延迟,事件将以最快的速度生成。

注:常用参数,一般设置为300毫秒,原因是实际用户操作的最快300毫秒左右一个动作事件,所以此处一般设置为300毫秒。

例:adb shell monkey -p 包名--throttle 300 -v 10 

4.5.--ignore-crashes
应用发生崩溃或异常时Monkey会停止运行。如果设置此项,Monkey将继续发送事件给系统,直到事件计数完成。

4.6.--ignore-timeouts
应用程序发生任何超时错误(如“Application Not responding”对话框)Monkey将停止运行,设置此项,Monkey将继续发送事件给系统,直到事件计数完成。
4.7. --ignore-security-exception 
当程序发生许可错误(例如启动一些需要许可的Activity)导致的异常时,Monkey将停止运行。设置此项,Monkey将继续发送事件给系统,直到事件计数完成。 

5.Monkey百分比事件(可以自定义)

0:点击事件百分比,即参数--pct-touch

1:滑动事件百分比,即参数--pct-motion

2:缩放事件百分比,即参数--pct-pinchzoom

3:轨迹球事件百分比,即参数--pct-trackball

4:屏幕旋转事件百分比,即参数--pct-rotation

5:基本导航事件百分比,即参数--pct-nav

6:主要导航事件百分比,即参数--pct-majornav

7:系统按键事件百分比,即参数--pct-syskeys

8:Activity启动事件百分比,即参数--pct-appswitch

9:键盘唤出隐藏事件百分比,即参数--pct-flip

10:其他事件百分比,即参数--pct-anyevent

Android Money测试基础一_第2张图片

6.一般的测试结果分析

6.1 ANR问题:在日志中搜索“ANR”程序无响应

6.2崩溃问题:在日志中搜索“Exception” 

7.补充小知识

7.1如何安装apk

adb install xxx.apk -----为了获取apk的安装包所在地址,可以直接把apk拖到cmd的窗口获取,返回success就说明安装成功了!


7.2卸载apk

adbuninstall 包名


7.3如何将日志保存到PC端?

adb shell monkey -v -v -v 1000 > 本机地址  如下:

adb shell monkey –p 包名 –-throttle 100 –-pct-touch 50 –-pct-motion 50 –v –v 10000 >E:\monkey1.txt

7.4查看进程

adb shell ps | find monkey


7.5杀死进程

adb shell kill 进程号


7.6查看占用的端口和进程

netstat -a -n -o |findstr "5037"   查看占用端口5037的PID值

tasklist /v | findstr 5096   通过PID查看进程名,看到底哪个进程占用此端口

7.7启动APP

adb shell am start -n 包的主Activity名 

adb shell am start -ncom.sina.weibo/com.sina.weibo.VisitorMainTabActivity

7.8 adb获取屏幕分辨率:

  adb shell wm size  简洁方式
  adb shell dumpsys window displays 查看详情

 

你可能感兴趣的:(Android,Money)