一、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. js判断是否下拉刷新

    if(document.body.scrollTop + window.innerHeight>=document.body.clientHeight-10){ this.loadPointsL ...

  2. python笔记:#009#判断语句

    判断(if)语句 目标 开发中的应用场景 if 语句体验 if 语句进阶 综合应用 01. 开发中的应用场景 生活中的判断几乎是无所不在的,我们每天都在做各种各样的选择,如果这样?如果那样?-- 程序 ...

  3. DevOps之一 Gitlab的安装与配置

    gitlab的安装 参考治疗:https://www.gitlab.com.cn/installation/#centos-7 http://www.21yunwei.com/archives/435 ...

  4. Data_r_and_w(csv,json,xlsx)

    import osimport sysimport argparsetry:    import cStringIO as StringIOexcept:    import StringIOimpo ...

  5. Python_heapq

    import heapq #导入heapq堆模块 import random data = random.sample(range(1000),10) print(data) heapq.heapif ...

  6. Redis使用单进程单线程方式的优缺点分析

    [转] http://www.syyong.com/db/Redis-why-the-use-of-single-process-and-single-threaded-way-so-fast.htm ...

  7. CAS 4.0 单点登录教程

    CAS 单点登录指导文档 1.概述 单点登录(Single Sign On),简称为 SSO,是目前比较流行的企业业务整合的解决方案之一.SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所 ...

  8. EXCEL解析之终极方法WorkbookFactory

    Selenium做自动化测试当然不能避免和Excel打交道. 由于Excel版本的关系,文件扩展名分xls和xlsx, 以往的经验都是使用HSSFWorkbook和XSSFWorkbook来分别处理. ...

  9. 对于Javascript 执行上下文的理解

    转载无源头地址 在这篇文章中,将比较深入地阐述下执行上下文 – JavaScript中最基础也是最重要的一个概念.相信读完这篇文章后,你就会明白javascript引擎内部在执行代码以前到底做了些什么 ...

  10. SSM-Spring-15:Spring中名称自动代理生成器BeanNameAutoProxyCreator

    ------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 名称自动代理生成器:BeanNameAutoProxyCreator 为了更好的测试,我放了俩个接口,俩个实现 ...