AutoMonkey框架原理与应用(四)

三、Monkey测试的日志分析

完成Monkey测试之后,如何开展Monkey测试中日志分析和内存泄露分析?

AutoMonkey框架原理与应用(四)

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所示:

AutoMonkey框架原理与应用(四)

图5 内存趋势详情

5)针对hprof文件,看下到底是哪些对象更多,占用的内存更大。

2. Monkey日志分析

Monkey日志分析是Monkey测试中非常重要的一个环节。通过日志分析,可以获取APP在测试过程中是否发生异常,以及发生的频率。同时,还可以获取对应的错误信息,帮助开发定位和解决问题。Monkey运行时输出的日志(monkey_test.txt文件)一般包括四类信息,如图6所示:

AutoMonkey框架原理与应用(四)

图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%

(待续)文章来源:光荣之路

Testin云测送大家一波超级福利!
①价值5000元的Testin专属测试大礼包(包含120分钟自动化测试、120分钟远程真机调试、每日免费使用1次标准兼容测试、每日免费使用1次安全测试);
②原51testing产品总监陈霁老师16年测试工作总结精华 -《软件测试入门必读》课程。
如何获取福利?
登陆或者注册您的Testin账号进行企业认证,完成认证自动获得福利大礼包,认证请戳——> http://www.testin.cn

更多精彩内容:

AutoMonkey框架原理与应用(三)

面试官常用的40个问题,中英文的…

产品团队,开发团队和测试团队的关系

为什么你无法说服你的同事使用TDD?

这样做,让你的渗透测试更有效!

X