Android App 压力测试方法(Monkey)

一.为什么要开展压力测试

a.提高产品的稳定性;b.提高产品的留存率

二.什么时候开展压力测试

a.首轮功能测试通过后;b.下班后的夜间进行

三.7个基础知识(理论部分)

3.1 手动测试场景与自动测试场景

Android App 压力测试方法(Monkey)_第1张图片

 

3.2 Monkey测试工具介绍

Monkey是发送伪随机用户事件的工具;Monkey在手机系统里;Monkey需要借助ADB使用;

Android App 压力测试方法(Monkey)_第2张图片

 

3.3 MonkeyScript测试命令集合介绍 

Android App 压力测试方法(Monkey)_第3张图片

 

3.4 异常测试结果分析

四.6个实践小案例

 

4.1 一次Android App的压测实践

需要准备的环境:1.Android SDK环境;2.python环境

Android App 压力测试方法(Monkey)_第4张图片4.2 Monkey高级参数——throttle实践

 

4.3 Monkey高级参数——seed实践

每一个seed值对应一个操作序列,seed值相同,操作序列就相同,最终的结果也是相同的,设定seed值可以用来复现bug

 

4.4 Monkey高级参数——触摸事件实践

 

加 -v 可以看到每次事件的详情

4.5 Monkey高级参数——其他事件实践

Android App 压力测试方法(Monkey)_第5张图片

Android App 压力测试方法(Monkey)_第6张图片

Android App 压力测试方法(Monkey)_第7张图片

4.6 crash异常测试结果析取

Android App 压力测试方法(Monkey)_第8张图片4.7 anr异常测试结果析取

Android App 压力测试方法(Monkey)_第9张图片4.9 MonkeyScript常用命令介绍

Android App 压力测试方法(Monkey)_第10张图片

Android App 压力测试方法(Monkey)_第11张图片

4.10 MonkeyScript实践

Android App 压力测试方法(Monkey)_第12张图片

Android App 压力测试方法(Monkey)_第13张图片

4.11 MonkeyScript实践问题解决

遇到的问题:脚本执行后,调用的不是被测试app

Android App 压力测试方法(Monkey)_第14张图片

具体原因是,测试app的工程文件内缺少一个属性值!如果缺少这一个属性值的话,app是不允许被外部调用的,也就是说通过命令行的方式是无法调用app的!

Android App 压力测试方法(Monkey)_第15张图片

所以,在执行monkeyscript脚本时,要确认的几个点:

A.被测app试被允许外部调用的!

C.因为执行monkeyscript脚本没有调试功能,出现问题需要自己查找,所以在写monkeyscript脚本时一定要更加注意,

特别是标点符号(一定是英文下的半角符号)!

4.12 MonkeyRunner常用API介绍

monkeyscript最大的弊端是在跑自动化脚本的时候不能截屏,而MonkeyRunner能做到这一点

Android App 压力测试方法(Monkey)_第16张图片

MonkeyRunner的脚本用Python实现,如下图:

Android App 压力测试方法(Monkey)_第17张图片

Android App 压力测试方法(Monkey)_第18张图片

Android App 压力测试方法(Monkey)_第19张图片

4.13 MonkeyRunner实践

 目标:实现在搜索框中输入查询词,并截图

 MonkeyRunner的实现脚本如下图:

Android App 压力测试方法(Monkey)_第20张图片

4.12 MonkeyRunner补充说明

MonkeyRunner只能实现功能性的自动化过程,如果想让MonkeyRunner执行多次的话,可以通过python脚本来实现,也就是说用python来实现多线程、

循环操作等来执行脚本,可以帮助我们完成重复的操作过程!

以上简单介绍了用Monkey做Android App的压力测试,希望对初学者有所帮助。

 

 

 

你可能感兴趣的:(移动ANDROID研发,移动ANDROID研发,IOS研发)