Emmagee--APP性能测试工具的基本使用
一、Emmagee介绍
Emmagee是监控指定被测应用在使用过程中占用机器的CPU、内存、流量资源的性能测试小工具。
该工具的优势在于如同windows系统性能监视器类似,它提供的是数据采集的功能,而行为则基于用户真实的应用操作
支持SDK:Android2.2以及以上版本
二、为什么使用Emmagee?
1、开源
2、使用方便,无需root权限
3、可以监控单个应用性能
4、浮窗显示实时展示数据
5、CSV格式保存性能数据,方便转换为其它格式
6、用户自定义采集性能数据频率
7、支持2.2以及以上版本
三、Emmagee详细功能介绍
1、检测当前时间被测应用占用的CPU使用率以及总体CPU使用量
2、检测当前时间被测应用占用的内存量,以及占用的总体内存百分比,剩余内存量
3、检测应用从启动开始到当前时间消耗的流量数
4、测试数据写入到CSV文件中,同时存储在手机中
5、可以选择开启浮窗功能,浮窗中实时显示被测应用占用性能数据信息
6、在浮窗中可以快速启动或者关闭手机的wifi网络
四、Emmagee如何使用?
1、安装Emmagee应用
apk下载地址:https://github.com/NetEase/Emmagee/releases
2、启动Emmagee,右上角设置采集频率,列表中会默认加载手机安装的所有应用


3、选择你需要测试的应用,点击“开始测试”,被测应用会被启动
4、开始你的功能测试吧,测试过程中会自动记录相关性能参数
5、(重要)测试完成后回到Emmagee界面,点击“结束测试”,测试结果会保存在手机指定目录的CSV文件中
生成的CSV文件内容见图:

6、将csv数据拷贝到excel中(或另存为excel文件)生成图表,使用自带的统计图标功能生成统计图,即可清晰看到整个操作过程中cpu、内存等关键数据的变化。
生成统计图步骤:
1)将“时间”列去掉日期,仅保留时分秒;
2)将不需要的列隐藏,保留需要分析的列;
3)生成图表;
以下为某个项目的app生成的图表:

数据性能指标:
- 应用占用内存PSS(MB):应用当前占内存的大小;
- 应用占用内存比(%):应有占总内存的百分比;
- 机器剩余内存(MB):机器当前剩余内存;
- 应用占用CPU率(%):应用占用总CPU的百分比;
- CPU总使用率(%):CPU的总使用率,包括当前应有,和系统的所有运行的应有;
- CPU0-CPU3是因为手机是多核的(4核显示cpu0-cpu3,10核显示到cpu0-cpu9)
- 流量(KB):从检测开始共耗用的流量;
- 电量(%):剩余电池的百分比,包括其他应用的,这个是有误差的,所以测试期间尽可能关闭其他软件,或者期间别操作其他的应用,避免带来误差;
- 电流(mA):小于0是放电大于0是充电;
- 温度(C):手机当前的温度;
- 电压(V):未知;
- 帧率:不确定是两次取数之间的平均帧率还是取数据的瞬间帧率。
五、设置
1、采集数据可以在Emmagee右上角设置中设置采集频率,默认为5;
2、邮件配置:

六、常见问题及解决方案
1. 以下不受支持的设备意味着某些性能数据将在监控时显示“null”或“N/A”;
|
Unsupported Performance Data
|
Devices
|
Known Issues
|
|---|---|---|
| CPU,Current | Xiaomi MI 1,MI 2 | CPU usage occasionally is higher than 600% when using "top" command |
| Current | Samgsung Galaxy Nexus、HuaWei Honor 4C | These devices do not include the electric current values in battery drivers |
| Start time | Xiaomi MI 2, acer v360 |
These devices do not contain the ActivityManager's Displayed message from the logcat |
2. excel在打开CSV文件时可能会出现乱码的情况
因为excel打开CSV默认使用ANSI编码,如果手机上保存的CSV是utf-8或其他编码,就会出现乱码,这里使用一下特别的转码技巧,
先在类似“Emmagee_TestResult_(时间).csv”上右键单击,用“记事本”打开,然后点击“文件—另存为”,在编码那里选择“ANSI”,保存,然后用excel打开即可解决乱码的问题。
注:
1. 已知部分不支持的机型可在此查阅:https://github.com/NetEase/Emmagee/wiki/Some-devices-are-not-supported;
2. 电流: 小于0是放电大于0是充电;
3. 启动时间: 为空是应用已启动或者未搜集到启动时间;
4. N/A: 不支持或者数据异常;
5. 采集数据可以在Emmagee右上角设置中设置采集频率,该实例采用的是5秒;
6. Emmagee软件不显示悬浮窗,可以在手机中设置,具体自己百度吧。
Emmagee--APP性能测试工具的基本使用的更多相关文章
- Emmagee app性能测试工具使用教程
Emmagee app性能测试工具使用教程 by:授客 QQ:1033553122 简介 Emmagee是网易杭州研究院QA团队开发的一个简单易上手的Android性能监测小工具,主要用于监控单个Ap ...
- 【转】Emmagee app性能测试工具使用教程
简介 Emmagee是网易杭州研究院QA团队开发的一个简单易上手的Android性能监测小工具,主要用于监控单个App的CPU,内存,流量,启动耗时,电量,电流等性能状态的变化,且用户可自定义配置监控 ...
- APP性能测试工具GT的使用总结:app内存测试
APP性能测试工具GT的使用总结:app内存测试 GT(随身调)是APP的随身调测平台,它是直接运行在手机上的“集成调测环境”(IDTE, Integrated Debug Environment). ...
- APP性能测试工具-GT(随身调)
GT(随身调)是APP的随身调测平台,它是直接运行在手机上的“集成调测环境”(IDTE, Integrated Debug Environment).利用GT,仅凭一部手机,无需连接电脑,您即可对AP ...
- App性能测试工具使用说明-MobilePerformance
一. 环境搭建 安装Android SDK 1.6或者1.7版本均可,建议1.7,环境变量的配置,Java SDK的安装很简单,不赘述了. 安装SDK 1.安装Android SDK: 2.安装完毕后 ...
- APP性能测试工具
各种自动化工具作用: 自动化:appium 针对接口做压测:jmeter 执行一段脚本,随机乱点:monkey 如果有用loadrunner12的话 也可以用mobilerecoder录制脚本(lr1 ...
- Emmagee——开源Android性能测试工具
工具:Emmagee作者:孔庆云 网易(杭州)质量保证部 开源地址:https://github.com/NetEase/Emmagee Wiki:https://github.com/NetEase ...
- Emmagee—开源Android性能测试工具
下载:https://github.com/NetEase/Emmagee/releases/download/V2.5/Emmagee.apk 1.Emmagee——Android性能测试工具 Em ...
- App测试工具大全,收藏这篇就够了
随着移动互联网的高速发展,App 应用非常火,测试工程师也会接触到各种 app 应用.除了人工测试之外,也可以通过一些测试工具来提高我们的测试效率,以下对于我用过或听过的 app 测试工具做了一个统一 ...
- Android性能测试工具(一)之Emmagee
Android性能测试工具(一) 之Emmagee Emmagee是监控指定被测应用在使用过程中占用机器的CPU.内存.流量资源的性能测试小工具. 支持SDK:Android2.2以及以上版本 Emm ...
随机推荐
- CentOS, FreeBSD, Ubuntu LTS 维护风格的简单比较
https://jackqq.wordpress.com/2014/06/24/centos-vs-freebsd-vs-ubuntu-lts/ 看到周围的人好多在用或者学 CentOS,忍不住也想看 ...
- mysql8绿色免安装win64版本(自带heidisql.exe客户端)应该兼容老版第三方工具。
https://pan.baidu.com/s/1cvQ4AJX6rmqSpMhBQTPz4Q 如果缺c库,自己去找下. 使用方法:先执行initdb.bat初始化数据 如果要安装为服务:执行inst ...
- DDGScreenShot — 复杂屏幕截屏(如view ScrollView webView wkwebView)
写在前面 最近有这么一个需求,分享页面,分享的是web订单截图,既然是web 就会有超出屏幕的部分, 生成的图片还要加上我们的二维码,这就涉及到图片的合成了. 有了这样的需求,就是各种google.也 ...
- ES6浅谈之Promise
首先来回想一下Promise对象的写法: // 方法1 let promise = new Promise ( (resolve, reject) => { if ( success ) { . ...
- spark SQL随笔
sparkSQL 1.主要的数据结构 DataFreames 2.开始使用:SQLContext 创建步骤: Val sc:sparkContext Val sqlContext=new org. ...
- 深入理解.net - 3.类型Type
说到类型,.NET技术是基于通用类型系统(CTS,Common Type System)的,而CTS又是构建于公共语言架构(CLI,Common Language Infrastructure)之上, ...
- android studio 在使用图片的时候会检测图片的合法性
1.当android studio 在使用png格式的时候,会报一系列的错误,甚至会显示找不到R文件,这是因为Android studio 不支持png格式的图片,检测图片的合法性的时候会报错 解决方 ...
- Maven学习(一)-- Maven入门
摘自:http://www.cnblogs.com/xdp-gacl/p/3498271.html 一.Maven的基本概念 Maven(翻译为"专家","内行" ...
- 二十四、Hadoop学记笔记————Spark的架构
master为主节点 一个集群中可能运行多个application,因此也可能会有多个driver DAG Scheduler就是讲RDD Graph拆分成一个个stage 一个Task对应一个Spa ...
- python函数注释, :与 ->
python函数注释, :与 -> 如图:add1函数中的:意思是:函数中的参数说明 add2函数中:->意思是:函数的返回值为整型 这两种方法都是函数的注释方法,具体使用时要别人能 ...