前言

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

工具介绍:

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

解决的问题:

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

工具原理:

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

工具优势:

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

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

工具结构:

执行流程:

使用效果:

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

上手使用:

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

环境准备:

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

运行方式:

1,将工具下载下来放到本地目录下
2,配置工作目录config.xml文件

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】 针对性的进行稳定性测试相关推荐

  1. android稳定性测试

    1.monkey介绍 说到稳定性测试我们就不得不说monkey,monkey就是猴子,所谓的稳定性测试,就像一只猴子,在设备上进行随机点击触摸等事件操作以此来发现软件的异常,它的主要目的就是为了测试a ...

  2. monkey android 教程,Android Monkey使用详解

    Monkey 是Android SDK提供的一个命令行工具,是一个黑盒压力测试工具,采用随机算法,对被测应用随机发送伪随机的用户事件流,如点击,拖拽,滑动,输入等,来确定应用是否会发生异常,并且会产生 ...

  3. android驱动测试,Android: 通过 cucumber 驱动 monkey 做稳定性测试

    主要内容 稳定性测试是什么 Monkey 介绍 自动化 Monkey 稳定性测试是什么 通过随机点击屏幕一段时间,看看 app 会不会奔溃,能不能维持正常运行. Monkey 介绍 Monkey 是一 ...

  4. android 稳定性测试工具,APP 稳定性测试工具-Fastbot_Android详解

    基于monkey的二次开发,约束monkey的行为,比monkey更智能. 写在开始 monkey测试的随机性概率过大,导致其效率并不能达到预期.有时可能遍历了很久,依旧与最有可能发生问题的部分擦肩而 ...

  5. [原创]Android Monkey测试工具使用介绍

    [原创]Android Monkey测试工具使用介绍 1 Android Monkey介绍 Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中.它向系统发送伪随机的用户事件 ...

  6. monkey测试_爱码小士丨 APP稳定性测试(附视频详解)

    在实际的测试过程中,主要是对系统的功能来进行测试,用于校验功能的正确性 还需要考虑到系统在未修改的状态下,是否能够稳定运行,即崩溃.闪退.重启.系统异常等等等地情况 在APP中,稳定性测试一般是交由M ...

  7. Monkey稳定性测试初探(二)

    记得 关注转发~~~ 之前写过一篇关于稳定性测试的文章: Monkey随机性能压测初探(一) 01 什么是稳定性测试 稳定性测试,是在一定压力的情况下,对系统或某个模块持续进行长时间的操作(一般遵循7 ...

  8. 一文彻底搞懂App的Monkey稳定性测试

    01.什么是稳定性测试 通过随机点击屏幕一段时间,看看app会不会崩溃,能不能维持正常运行 02.Money是什么 Monkey测试是Android平台自动化测试的一种手段,通过Monkey程序模拟用 ...

  9. 1.Android稳定性测试

    工具 adb monkey 测试前提 1)PC端已安装adb环境及做好配置 注:需要安装JDK.Android SDK并分别进行环境变量配置(此不为本次重点,不提供安装细则,可以参考本文档底部提供的参 ...

  10. monkey稳定性测试详细介绍

    一.什么是稳定性测试? 通过随机点击屏幕一段时间,看看app会不会奔溃,能不能维持正常运行 二. Money是什么? Monkey测试是Android平台自动化测试的一种手段,通过Monkey程序模拟 ...

最新文章

  1. DDR和DDR2的区别
  2. 第四节 莎士比亚模板
  3. sql语句的进化--原始篇
  4. NowCoder110E Pocky游戏 状压DP
  5. 设计模式学习笔记三——Abstract Factory模式
  6. git reset 命令详解(一)—— Git 学习笔记 07
  7. 就会编成新闻稿的飞鸽传书
  8. 3-2:常见任务和主要工具之存储介质
  9. 子查询到底走不走索引?
  10. 单系统站内信设计概述(满足百万级信息)
  11. python中字符串中的换行符号是什么_Python字符串中的换行符和制表符
  12. figure函数--Matplotlib
  13. ARM64移动处理器解惑
  14. win7计算机的蓝牙,手机蓝牙如何与win7电脑连接?win7电脑蓝牙连接手机的方法
  15. elastichd的使用教程_ElasticHD
  16. 怎么使用计算机英语段落,怎么在电脑word文档中添加英文朗读功能
  17. CDR插件开发之GMS插件001 - 什么是GMS插件
  18. 中国私有云发展调查报告(2018年)
  19. [每日一氵] Python 训练过程中,如何优雅的保存loss
  20. 潇洒郎: 解决EDAS论文上传文字没有嵌入问题:Upload failed: The font Arial,Italic is not embedded in the file.

热门文章

  1. centOS7.6 服务器配置环境
  2. linux ab 命令参数,linux环境中ab命令简介及结果分析
  3. mysql引擎接口_Mysql存储引擎MyISAM和InnoDB
  4. 问题2:无法打开包括文件:“windows.h”:No such file or directory
  5. DSP实验二c语言程序,实验1.2:编写一个以C语言为基础的DSP程序
  6. mysql 删除创建表分区,MySQL分区表创建,分区创建、删除示例
  7. 2014年计算机一级考试题目,2014年计算机一级考试WPS及基础模拟试题(2)
  8. springcahce集成redis 设置过期时间
  9. 【前端成长-读书群】
  10. vue从创建到完整的饿了么(7)点击事件与页面跳转