AutoMonkey框架原理与应用(四)
2018-02-28 10:56
197 查看
三、Monkey测试的日志分析完成Monkey测试之后,如何开展Monkey测试中日志分析和内存泄露分析?
1. 一般的场景是这样的:1)启动Monkey之前,打开APP,使用Andorid device monitor dump 一个内存“快照”(hprof 文件)出来;2)根据测试策略,运行monkey测试;3)再次使用Andorid device monitor dump 一个hprof 文件出来;4)使用MAT(Memory Analyze Tool)打开两个hprof文件,比较两个的内存占用情况,如果后一个内存占用更多,区分PSS 及 USS的内存占用情况,如果持续增长,肯定是有泄露的。或封装autoMonkey记录内存情况,结束时自动生成曲线图;如图5所示:
图5 内存趋势详情5)针对hprof文件,看下到底是哪些对象更多,占用的内存更大。2. Monkey日志分析Monkey日志分析是Monkey测试中非常重要的一个环节。通过日志分析,可以获取APP在测试过程中是否发生异常,以及发生的频率。同时,还可以获取对应的错误信息,帮助开发定位和解决问题。Monkey运行时输出的日志(monkey_test.txt文件)一般包括四类信息,如图6所示:
图6 Monkey运行log输出顺序1)测试命令信息Monkey启动后会输出当前执行命令的各种参数信息,其中包括随机种子(Seed)信息、事件数量、可运行的应用列表以及各事件百分比等。这些信息由Monkey命令参数指定。Monkey日志中测试命令信息如下:// 随机种子值和执行事件数量:Monkey: seed=4007 count=92665// 可运行的应用列表:AllowPackage: com.xxx.xxx:IncludeCategory: android.intent.category.LAUNCHER:IncludeCategory: android.intent.category.MONKEY// Selecting main activities from category android.intent.category.LAUNCHER......// - NOT USING main activity com.jrdcom.care.launcher.CareLauncher (from package com.jrdcom.care.launcher)// Seeded: 4007// 各事件百分比// Event percentages:// 0: 40.0%// 1: 25.0%// 2: 0.1724138%// 3: 1.2931035%// 4: 10.0%// 5: 2.1551723%// 6: 10.0%// 7: 0.1724138%// 8: 10.0%// 9: 0.0862069%// 10: 1.1206896%(待续)文章来源:光荣之路
更多精彩内容:AutoMonkey框架原理与应用(三)
面试官常用的40个问题,中英文的...
这样做,让你的渗透测试更有效!
为什么你无法说服你的同事使用TDD?
产品团队,开发团队和测试团队的关系
1. 一般的场景是这样的:1)启动Monkey之前,打开APP,使用Andorid device monitor dump 一个内存“快照”(hprof 文件)出来;2)根据测试策略,运行monkey测试;3)再次使用Andorid device monitor dump 一个hprof 文件出来;4)使用MAT(Memory Analyze Tool)打开两个hprof文件,比较两个的内存占用情况,如果后一个内存占用更多,区分PSS 及 USS的内存占用情况,如果持续增长,肯定是有泄露的。或封装autoMonkey记录内存情况,结束时自动生成曲线图;如图5所示:
图5 内存趋势详情5)针对hprof文件,看下到底是哪些对象更多,占用的内存更大。2. Monkey日志分析Monkey日志分析是Monkey测试中非常重要的一个环节。通过日志分析,可以获取APP在测试过程中是否发生异常,以及发生的频率。同时,还可以获取对应的错误信息,帮助开发定位和解决问题。Monkey运行时输出的日志(monkey_test.txt文件)一般包括四类信息,如图6所示:
图6 Monkey运行log输出顺序1)测试命令信息Monkey启动后会输出当前执行命令的各种参数信息,其中包括随机种子(Seed)信息、事件数量、可运行的应用列表以及各事件百分比等。这些信息由Monkey命令参数指定。Monkey日志中测试命令信息如下:// 随机种子值和执行事件数量:Monkey: seed=4007 count=92665// 可运行的应用列表:AllowPackage: com.xxx.xxx:IncludeCategory: android.intent.category.LAUNCHER:IncludeCategory: android.intent.category.MONKEY// Selecting main activities from category android.intent.category.LAUNCHER......// - NOT USING main activity com.jrdcom.care.launcher.CareLauncher (from package com.jrdcom.care.launcher)// Seeded: 4007// 各事件百分比// Event percentages:// 0: 40.0%// 1: 25.0%// 2: 0.1724138%// 3: 1.2931035%// 4: 10.0%// 5: 2.1551723%// 6: 10.0%// 7: 0.1724138%// 8: 10.0%// 9: 0.0862069%// 10: 1.1206896%(待续)文章来源:光荣之路
更多精彩内容:AutoMonkey框架原理与应用(三)
面试官常用的40个问题,中英文的...
这样做,让你的渗透测试更有效!
为什么你无法说服你的同事使用TDD?
产品团队,开发团队和测试团队的关系
相关文章推荐
- AutoMonkey框架原理与应用(三)
- AutoMonkey框架原理与应用(一)
- AutoMonkey框架原理与应用(二)
- autoMonkey框架原理与应用(一):Monkey基础知识与测试场景
- autoMonkey框架原理与应用(二):Monkey测试策略
- 软件需求最佳实践——SERU过程框架原理与应用(典藏版)
- NFramework开源AOP框架ORM的实现原理与应用
- Android -- Annotation(注解)原理详解及常见框架应用
- 黑马程序员_高新技术五(动态代理类,代理类的作用与原理,AOP框架应用)
- NFramework开源AOP框架ORM的实现原理与应用-.NET教程,.NET Framework
- 读高焕堂的 android 应用框架原理与程序设计 36技
- Android 应用崩溃恢复原理+Recovery恢复框架
- NFramework开源AOP框架ORM的实现原理与应用
- Hadoop学习第二次:HDFS的应用场景 部署 原理与基本框架
- Android中免Root实现Hook的Dexposed框架实现原理解析以及如何实现应用的热修复
- Android中免Root实现Hook的Dexposed框架实现原理解析以及如何实现应用的热修复
- 软件需求最佳实践——SERU过程框架原理与应用(典藏版)
- Android中免Root实现Hook的Dexposed框架实现原理解析以及如何实现应用的热修复
- ThreadLocal的原理和在框架中的应用
- (转)NFramework开源AOP框架ORM的实现原理与应用