adb启动app_app测试之monkey (一)

1 Monkey简介

Monkey是一款app的自动化测试工具,monkey是猴子的意思,所以从原理上说,它的自动化测试就类似猴子一样在软件上乱敲按键,猴子什么都不懂,就爱捣乱。Monkey原理也是类似,通过向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、滑动Trackball、手势输入等操作),来对设备上的程序进行测试,检测程序长时间的稳定性,多久的时间会发生异常。

Monkey工具存在Android系统中,使用Java语言写成,jar包在Android文件系统中的存放路径是:/system/framework/monkey.jar;Monkey.jar程序是由一个名为“monkey”的Shell脚本来启动执行,shell脚本在Android文件系统中的存放路径是:/system/bin/monkey;

monkey需要通过adb来唤醒,即通过在cmd窗口中执行: adb shell monkey {+命令参数}来进行Monkey测试;

2 Monkey 工作原理

在Monkey运行的时候,它会生成事件,并把它们发给系统。同时,Monkey还对测试中的系统进行监测,对下列三种情况进行特殊处理:

(1) 如果限定了Monkey运行在一个或几个特定的包上,那么它会监测试图转到其它包的操作,并对其进行阻止;

(2) 如果应用程序崩溃或接收到任何失控异常,Monkey将停止并报错;

(3) 如果应用程序产生了应用程序不响应ANR(application not responding)的错误,Monkey将会停止并报错;

按照选定的不同级别的反馈信息,在Monkey中还可以看到其执行过程报告和生成的事件。 3

3 Monkey命令详解

Monkey需要通过adb来运行,adb的环境请参考:《APP测试之adb》,

查看Monkey,monkey属于android系统自带的:

08addb545b4ce805182a4ada544dcabc.png

在system的bin目录下可以看到Monkey

ab4890ce8a64a16809e32d61d9395b34.png

在通过monkey进行测试前,需要知道待测试app的包名,可以通过使用“uiautomatorviewer.bat”工具来获取,也可以直接询问提供app的开发小哥哥,或者直接使用adb命令获取包名。

以下简单介绍两种通过adb命令获取包名的方法。

方法一:首先要先运行手机中需要获取包名的app,然后分别输入命令即可。

//获取APP包名方法一

cmd状态下: adb shell dumpsys activity | findstr mFocusedActivity

或者进入shell状态下查看:

adb shell

dumpsys activity | findstr mFocusedActivity

如图所示:

505ed3c0cb6e35a9f829d64b4333d7ff.png

方法二:查看设备中所有的包,在cmd 窗口中执行以下命令:

//获取APP包名方法二

adb shell

cd data/data

ls

之后输入一些Monkey命令,就可以开始测试。

//获取Monkey命令自带的帮助,在cmd中执行命令:

adb shell monkey –help

Monkey命令的参数大致分为三大类:

(1)基本配置参数 –v -s --throttle -p;

(2)发送的事件类型,总共11种事件类型,包括点击,触摸,缩放等

(3)调试选项

ef80d36158a680736d27e5c0966783ce.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值