【Android 】【Monkey Demons】 针对性的进行稳定性测试

前言

目前大部分的Monkey测试的方式大都无法对独立的模块进行稳定性测试,而每个业务线的入口在测试阶段很难通过原生的Monkey测试(随机性较强)来发现自己模块内crash的问题,针对这个问题,这个工具设计开发的初衷就是为了能够缩小测试范围,在测试阶段指定业务模块内发现和暴露更多的稳定性相关的问题。

工具介绍:

Demons(守护程序)是自主研发的一套独立于monkey测试之外的 手机内单个应用监听守护的 jvm程序。

解决的问题:

集成到优酷之后我们需要对App内的单个业务模块进行稳定性测试。由于原生的Monkey发送的是全局的随机事件,不支持对某几个Activity进行定制测试,Demons的出现就为了解决了这个问题。

工具原理:

原理其实就是有一个后台任务可用定时巡检PC上所连的每个设备当前运行在哪个页面,如果发现设备已经crash或者当前页面不在我们指定的白名单页面,那么Demons会自动处理当前进程的数据并初始化回到主入口。

工具优势:

Demons可以在每次越界之后随机分配回到一个主入口 进行初始化。
Demons与Monkey执行模块是分离的,这样可以防止相互影响。

Demons可以运用在原生的Monkey还是其他的修订过的遍历工具。

工具结构:

【Android 】【Monkey Demons】 针对性的进行稳定性测试_第1张图片

执行流程:

【Android 】【Monkey Demons】 针对性的进行稳定性测试_第2张图片

使用效果:

目前试用一个版本 10小时内 保持一直停留在指定页面,抛出来的指定模块的Crash次数占总次数的30%左右,剩余的crash大部分都是主客相关的crash

【Android 】【Monkey Demons】 针对性的进行稳定性测试_第3张图片

上手使用:

下载工具地址:
http://yunpan.taobao.com/s/2kxUUA0xNQK (提取码:Xqbqoj)

环境准备:

1,本地AndroidSdk环境必须要有
2,至少一台设备必须连接电脑(也可以用无线ADB)

运行方式:

1,将工具下载下来放到本地目录下
2,配置工作目录config.xml文件
【Android 】【Monkey Demons】 针对性的进行稳定性测试_第4张图片

3,执行monkey命令

4,然在工作目录下执行 java -jar Demons.jar

FAQ:

查看当前页面Activity

adb shell dumpsys activity | findstr "mFocusedActivity"

验证主入口是否有跳转权限

adb shell am start -n 包名/Activity名

主入口如果配的有问题会出现以下错误,原因是Activity 没有调用权限

【Android 】【Monkey Demons】 针对性的进行稳定性测试_第5张图片

你可能感兴趣的:(【Android 】【Monkey Demons】 针对性的进行稳定性测试)