【转】Emmagee app性能测试工具使用教程

简介

Emmagee是网易杭州研究院QA团队开发的一个简单易上手的Android性能监测小工具,主要用于监控单个App的CPU,内存,流量,启动耗时,电量,电流等性能状态的变化,且用户可自定义配置监控的频率以及性能的实时显示,并最终生成一份性能统计文件。

实现原理

1、监控应用CPU原理

Android系统是基于Linux内核的,所以系统文件的结构和Linux下一样,系统总体CPU使用信息放在/proc/stat文件下,/proc/cpuinfo文件存放CPU的其它信息,包括CPU名称,直接读取即可。Emmagee是将选中应用的PID传入,读取/proc/PID/stat文件信息及可获取该PID对应程序的CPU信息。

2、监控应用消耗流量

系统中有存放整体流量和针对当程序的流量统计,/proc/net/dev和/proc/uid_stat/UID下存放tcp_rcv和tcp_send文件,分别存放下行流量和上行流量,操作前后相减就得出结果 。

3、监控内存实现原理

获取到当被测应用的PID,然后按照PID调用android的API获取当前被测应用占用的内存。/proc/meminfo文件记录了系统内存信息。

Emmagee-2.2.apk为例

1、  下载Emmagee.apk安装包

下载地址:https://github.com/NetEase/Emmagee/releases

2、  安装Emmagee.apk

3、  打开Emmagee

4、  点击左上角的设置按钮,可进行采集频率,邮件发送等相关设置

5、  返回步骤3中,点选要测试的应用,然后点击“开始测试”

6、  对app进行相关操作,完成后返回到Emmagee界面,点击 停止测试

停止测试后,Emmagee会自动生成.csv测试结果文件。

7、  把文件导出来,分析数据和统计

8、  难点在哪里?

工具使用似乎不难,那难点在哪里?

个人觉得难在场景设计。笔者实践也不多,这里就简单说说设计思路吧。

前提条件:保证测试环境的干净

第一种类型:测试app中某个相对独立的功能

这种一般就是保证其它条件不变,重复操作这个单一功能,然后分析数据。

例子1:app首次启动的相关性能状态

场景描述:点击app,启动app直到出现app主页面。

测试操作:

1.打开Emmagee

2.选择app,点击“开始测试”,出现主页面后,点击“停止测试”

3.用手机清理软件,清理“被测app”。

4.重复步骤2

数据分析:

一般情况下,2.2版本的Emmagee会自动为我们生成CPU,内存,流量,电量,电流数据,但是启动耗时就不一定了,实践中发现启动耗时经常是获取不到的,但是做性能测试,很关心的一点就是响应时间,不能获取咋办?笔者是这么做的,设置采集频率的时间为最小值,比如1s,这样Emmagee就可以根据测试报告中,“时间”一栏大致统计出这个功能的耗时情况。

这些数据都有了,那么就可以根据多次的测试数据,求出各类数据的“均值”,“峰值”

例子2:app二次启动的相关性能状态

场景描述:点击app,启动app直到出现app主页面,退出app

测试操作:

1.打开Emmagee

2.选择app,点击“开始测试”,出现主页面后,退出app,点击“停止测试”

3.重复步骤2

注:和例子一不一样的地方在于,是否在前一次操作的基础上进行操作,即“测试起点”不一样。幸运的是,Emmagee是有这种“记忆”功能的。

数据分析:

参考例子1

第二种:测试某个流程,目的在于找出性能“瓶颈”

针对某个业务流,做一个完整的业务过程的操作

这里重点要说的数据分析具体咋做。个人的想法是这样的:根据测试生成的.csv文件,绘制相关数据的曲线图,查看曲线变化--平稳?起伏不定?还是“峰回路转”?如果不是很平稳,则说明性能上可能存在瓶颈,需要进一步分析是那个操作步骤中出现的。

关于咋看步骤,测试结果中,有一栏“栈顶Activity名称”可以看到大致的操作(如果看不懂咋办?测试前先操作看看,对比着看吧)

时间: 2024-10-13 03:13:56

【转】Emmagee app性能测试工具使用教程的相关文章

Emmagee app性能测试工具使用教程(转)

Emmagee app性能测试工具使用教程 by:授客 QQ:1033553122 简介 Emmagee是网易杭州研究院QA团队开发的一个简单易上手的Android性能监测小工具,主要用于监控单个App的CPU,内存,流量,启动耗时,电量,电流等性能状态的变化,且用户可自定义配置监控的频率以及性能的实时显示,并最终生成一份性能统计文件. 实现原理 1.监控应用CPU原理 Android系统是基于Linux内核的,所以系统文件的结构和Linux下一样,系统总体CPU使用信息放在/proc/stat

android app性能测试工具GT源码获取以及部署

GT是TMQ(腾讯移动品质中心)研发的一款app性能测试工具.官方地址:http://gt.qq.com/index.htmlgithub地址:https://github.com/Tencent/GT运行工具:eclipse ,我用的专门集成android环境的版本如下图eclipse下载地址:链接: https://pan.baidu.com/s/1csbzl0 密码: 3633 第一步 去github clone代码在cmd命令行中进入到事先创建好的项目存放文件夹下执行 git clone

APP性能测试工具GT的使用总结:app内存测试

APP性能测试工具GT的使用总结:app内存测试 GT(随身调)是APP的随身调测平台,它是直接运行在手机上的“集成调测环境”(IDTE, Integrated Debug Environment).利用GT,仅凭一部手机,无需连接电脑,您即可对APP进行快速的性能测试(CPU.内存.流量.电量.帧率/流畅度等等).开发日志的查看.Crash日志查看.网络数据包的抓取.APP内部参数的调试.真机代码耗时统计等.如果您觉得GT提供的功能还不够满足您的需要,您还可以利用GT提供的基础API自行开发有

App性能测试工具使用说明-MobilePerformance

一. 环境搭建 安装Android SDK 1.6或者1.7版本均可,建议1.7,环境变量的配置,Java SDK的安装很简单,不赘述了. 安装SDK 1.安装Android SDK: 2.安装完毕后启动Android SDK Manger (SDK Manager.exe,在Android SDK的安装目录下),安装需要的Android Packages,比如一些工具,需要的Android版本等等.需要注意的是google官网的下载经常失败,这时就需要配置代理了 Server:mirrors.

应用之星推出“图文app”制作工具,并附上教程

应用之星已推出的"图文"app制作工具,是快速制作图文电子书,图文杂志等一切有关图文资料的app生成工具,下面跟大家介绍"图文"制作教程,简单快捷,大致分三大步就能完成制作. 第一:登录应用之星网站(http://www.appstar.com.cn/),注册成会员. 第二:在首页点击"图文"logo 第三:进入图片制作页面. 1. 输入应用名称. 2. 选择应用图标,可以选择系统自带图标,也可以自定义图标. 3. 选择应用封面,可以选择系统自带

网络性能测试工具iperf详细使用图文教程(转)

Iperf是一个网络性能测试工具.Iperf可以测试TCP和UDP带宽质量.Iperf可以测量最大TCP带宽,具有多种参数和UDP特性.Iperf可以报告带宽,延迟抖动和数据包丢失.利用Iperf这一特性,可以用来测试一些网络设备如路由器,防火墙,交换机等的性能. Iperf有两种版本,windows版和linux版本.linux版本更新快,最新版本为iperf 3.0,下载地址为http://code.google.com/p/iperf/downloads/list ,windows版本官方

Elong App 性能测试分享

个人简介: 测试老鸟,曾做过6年的测试以及2年的大数据开发:曾就职于伟景行.高德(大数据开发):钟情于钻研开源测试框架:目前挂单于艺龙. 有对本主题感兴趣的同学,可以加我Q私信(305285925): 在本文内,主要以Android性能测试为主进行分析 一.性能测试包含 1.启动时间测试   测试场景包括 - - - 首次安装启动时间.冷启动.热启动测试 2.页面响应时间:   用户从点击一个控件,到下一页面主页面完全展示的时间: 3.基础度量指标  像cpu.内存(pss.vss.uss)等.

Android性能测试 一些适用于Android Studio的代码审查和性能测试工具

导言: Android应用在CPU占用,内存消耗方面的性能指标是影响产品质量的重要因素,由于QQ管家,360手机助手等应用都提供直观的内存消耗,流量监控功能,致使用户比以往更加关注软件的性能,并以此进行软件选用的决策. 目前,已经有很多可以监控android app 性能的工具可以供开发人员使用,如:基于Eclipse插件体系的MAT,其通过生成.hprof文件对内存泄露情况进行排查:内存检测工具APT:提供CPU利用率实时曲线图,方便对比测试内存泄露问题[图0-1] 图 0-1  通过APT实

iOS 性能测试工具 SDK

一.概括 1. 做一个类似GT的性能测试工具: 2. 第一期主要是CPU.内存功能,要求可以绘制曲线,可以选择曲线区间,自动计算最小值.最大值.均值等,支持曲线全屏显示 目标的视觉效果是类似股票走势图(GT的UI太丑): 3. 后续增加耗电量.网络流量.crash信息收集等功能: 4. 前期准备:SDK的制作,CPU.内存信息获取算法: 5. 这个工具起名Mobile Tortoise,缩写MT,与GT相呼应,寓意一步一个脚印,日臻完美,图标一只小乌龟,类似下图: 二.排期 11.21-11.2