一、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性能测试工具的基本使用的更多相关文章

  1. Emmagee app性能测试工具使用教程

    Emmagee app性能测试工具使用教程 by:授客 QQ:1033553122 简介 Emmagee是网易杭州研究院QA团队开发的一个简单易上手的Android性能监测小工具,主要用于监控单个Ap ...

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

    简介 Emmagee是网易杭州研究院QA团队开发的一个简单易上手的Android性能监测小工具,主要用于监控单个App的CPU,内存,流量,启动耗时,电量,电流等性能状态的变化,且用户可自定义配置监控 ...

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

    APP性能测试工具GT的使用总结:app内存测试 GT(随身调)是APP的随身调测平台,它是直接运行在手机上的“集成调测环境”(IDTE, Integrated Debug Environment). ...

  4. APP性能测试工具-GT(随身调)

    GT(随身调)是APP的随身调测平台,它是直接运行在手机上的“集成调测环境”(IDTE, Integrated Debug Environment).利用GT,仅凭一部手机,无需连接电脑,您即可对AP ...

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

    一. 环境搭建 安装Android SDK 1.6或者1.7版本均可,建议1.7,环境变量的配置,Java SDK的安装很简单,不赘述了. 安装SDK 1.安装Android SDK: 2.安装完毕后 ...

  6. APP性能测试工具

    各种自动化工具作用: 自动化:appium 针对接口做压测:jmeter 执行一段脚本,随机乱点:monkey 如果有用loadrunner12的话 也可以用mobilerecoder录制脚本(lr1 ...

  7. Emmagee——开源Android性能测试工具

    工具:Emmagee作者:孔庆云 网易(杭州)质量保证部 开源地址:https://github.com/NetEase/Emmagee Wiki:https://github.com/NetEase ...

  8. Emmagee—开源Android性能测试工具

    下载:https://github.com/NetEase/Emmagee/releases/download/V2.5/Emmagee.apk 1.Emmagee——Android性能测试工具 Em ...

  9. App测试工具大全,收藏这篇就够了

    随着移动互联网的高速发展,App 应用非常火,测试工程师也会接触到各种 app 应用.除了人工测试之外,也可以通过一些测试工具来提高我们的测试效率,以下对于我用过或听过的 app 测试工具做了一个统一 ...

  10. Android性能测试工具(一)之Emmagee

    Android性能测试工具(一) 之Emmagee Emmagee是监控指定被测应用在使用过程中占用机器的CPU.内存.流量资源的性能测试小工具. 支持SDK:Android2.2以及以上版本 Emm ...

随机推荐

  1. Flipping Parentheses~Gym 100803G

    Description A string consisting only of parentheses '(' and ')' is called balanced if it is one of t ...

  2. HBuilder真机联调、手机运行

    第一步:先确认手机是否连接上 未连接状态 如下图所示为已连接状态 导致手机未成功连接的原因: (1)手机与电脑未用USB数据线连接(嘿嘿,这一部大家估计都做到了,可略过) (2)电脑上需要安装电脑版的 ...

  3. 压力测试工具ab - Apache HTTP server benchmarking tool

    搞互联网开发,压力测试必不可少.压力测试的工具很多,我用过ab和JMeter,今天主要讲ab的用法. 1.ab是什么 ab is a tool for benchmarking your Apache ...

  4. 工作中常用的JS函数整理分享(欢迎大家补充)

    今年在渣X工作整理的常用JS函数 今年来了渣X工作,我所在这个部门分工很奇怪,CSS竟然有专门的人在搞,开发PHP的人员需要处理JS,以至于有时候开发起来不是那么得心应手,感觉把JS和CSS拆开就像是 ...

  5. Tomcat配置与优化(内存、并发、管理)与性能监控

    原文链接:http://blog.csdn.net/xyang81/article/details/51530979 一.JVM内存配置优化 在开发当中,当一个项目比较大时,依赖的jar包通常比较多, ...

  6. springboot+mybatis+redis实现分布式缓存

    大家都知道springboot项目都是微服务部署,A服务和B服务分开部署,那么它们如何更新或者获取共有模块的缓存数据,或者给A服务做分布式集群负载,如何确保A服务的所有集群都能同步公共模块的缓存数据, ...

  7. BigDecimal.setScale 处理java小数点

    BigDecimal.setScale()方法用于格式化小数点setScale(1)表示保留一位小数,默认用四舍五入方式 setScale(1,BigDecimal.ROUND_DOWN)直接删除多余 ...

  8. capwap学习笔记——初识capwap(二)(转)

    2.5.1 AC发现机制 WTP使用AC发现机制来得知哪些AC是可用的,决定最佳的AC来建立CAPWAP连接. WTP的发现过程是可选的.如果在WTP上静态配置了AC,那么WTP并不需要完成AC的发现 ...

  9. 【手记】走近科学之为什么明明实现了IEnumerable<T>的类型却不能调用LINQ扩展方法

    比如Json.NET的JObject明明实现了IEnumerable<T>,具体来说是IEnumerable<KeyValuePair<string, JToken>&g ...

  10. 通过VirtualBox安装Linux系统(CentOS7)

    本文目的:创建虚拟系统.在windows系统中通过虚拟工具VirtualBox创建一个虚拟系统CentOS. 备注:(1)版本如下:VirtualBox-5.2.12-122591-Win 和Cent ...