【APP移动端性能测试】第三节.性能测试工具GT和常见的性能测试点(上)

2024-06-21 22:28

本文主要是介绍【APP移动端性能测试】第三节.性能测试工具GT和常见的性能测试点(上),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 前言
  • 一、性能测试工具GT
  •       1.1 性能测试工具GT的基本介绍
  •       1.2 性能测试工具GT的基本使用
  • 二、CPU性能测试
  •       2.1 CPU说明
  •       2.2 CPU测试步骤
  •       2.3 监控结果保存到目录文件
  • 三、内存性能测试
  •       3.1 内存知识点介绍
  •       3.2 常见的内存问题和现象
  •       3.3 内存测试步骤
  • 四、流畅度性能测试
  •       4.1 流畅度知识点介绍
  •       4.2 流畅度测试步骤
  • 总结


前言


一、性能测试工具GT

1.1 性能测试工具GT的基本介绍

GT简介:

GT(随身调)Android版是腾讯MIG专项测试组自行研发的APP随身调测平台,它是直接运行在手机上的"集成调测环境"(ITE,Integrated Test Environment)。

之所以叫"集成调测环境”,是因为仅用GT即可独立完成如下针对AUT的测试工作:

  • 基础性能测试:手机整机或者手机上安装的任何一个APP的CPU、内存、网络流量、流畅度、帧率、电量等基础性能指标的实时展示、历史数据采集及excel格式存储、曲线绘制等。
  • 日志查看:APP的Logcat日志查看,便于直接用手机现场定位APP功能异常、crash。
  • 网络数据包抓包:直接用手机抓包保存成pcap文件,下载到PC后用Wireshark查看。

GT安装:

GT有两种版本:

(1)可独立安装的GT (APK,IOS无该版本),像普通APP一样安装。

(2)GT SDK:将GT的SDK嵌入到被调测的应用的工程里。


1.2 性能测试工具GT的基本使用

详细内容跳转至链接博客:http://t.csdnimg.cn/gWgJC

性能测试工具GT的基本使用:

安装:手机有root权限

(1)进入AUT界面,配置要监控的指标

(2)进入参数页面,选择要统计的参数,选择需要实时监控的数据

(3)配置日志开头为logcat为on

(4)进入APP进行测试

(5)回到GT界面,在参数界面看查看监控指标的数据统计

(6)进入日志,查看响应的日志记录


二、CPU性能测试

2.1 CPU说明

CPU知识点介绍:

GT工具提供了两个CPU的监控指标:CPU和iffies

CPU关键指标:

CPU使用率:

  • 用户态:应用程序占用的CPU时间
  • 系统态:系统内核占用的CPU时间
  • 空闲态:空闲进程占用的CPU时间(idle process)

CPU使用率=非空闲态/CPU总时间=(用户态+系统态)/CPU总时间

jiffies:

从开机到目前为止应用程序占用的CPU的总时间片。


CPU问题产生的影响

即CPU出现问题的现象:

1、CPU长时间超过90%

2、手机发热、耗电量增加

3、手机卡顿、出现ANR


2.2 CPU测试步骤

CPU测试的步骤:

(1)打开GT,配置CPu的监控指标

(2)进入被测APP,进行相关的业务操作

(3)进入GT,查看CPU的监控统计(先看曲线图)

(4)收集CPU详细数据并分析


2.3 监控结果保存到目录文件

监控结果保存到目录文件的步骤:

(1)打开模拟器桌面上的文件管理器

(2)在文件管理器内,自己找你需要导出的文件,然后点击勾。

(3)连续点击返回按钮,一直到文件管理器的根目录下

(4)点击mnt文件夹,点击shared文件夹,然后点击other文件夹,再点击点击粘贴此选项。

(5)出现表示粘贴成功,再点击我的电脑按钮,点击打开文件夹,就可以看到刚刚保存的文件


三、内存性能测试

3.1 内存知识点介绍

内存关键指标:

私有内存:

进程独占的内存,在进程销毁的时候同步回收私有内存

实际使用内存:

除了私有内存以外,与其他进程共享的内存空间,在进程销毁的时候不能回收。


3.2 常见的内存问题和现象

内存问题:

1、内存泄漏:程序操作时申请内存,操作结束后内存未全部释放

2、内存溢出:程序操作时申请内存,但是此时内存不够,不能满足申请的要求,就出现内存溢出。


内存问题出现的现象:

1、实际使用内存PSS持续增长

2、程序崩溃(出现crash)


3.3 内存测试步骤

内存测试的步骤:

1、打开GT工具,配置内存相关的指标

2、打开被测APP,测试相关业务,监控内存指标

3、打开GT,查看内存监控数据(曲线)

4、收集内存相关的数据,并分析


四、流畅度性能测试

4.1 流畅度知识点介绍

流畅度的重要指标:

FPS:每秒渲染的帧数。

流畅度问题的影响:

表现形式:卡顿

FPS指标的数据要求:

通常要求在24帧/s以上,保证流畅。(10-12帧)

最高60帧/s


4.2 流畅度测试步骤

流畅度测试的步骤:

1、打开GT,配置流畅度指标FPS

2、打开被测APP,滑动页面,统计FPS值

3、进入GT,查看流畅度曲线

4、收集滑动操作时的流畅度数据,计算平均值。(24帧/s——60帧/s)

总结

这篇关于【APP移动端性能测试】第三节.性能测试工具GT和常见的性能测试点(上)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1082510

相关文章

C++初始化数组的几种常见方法(简单易懂)

《C++初始化数组的几种常见方法(简单易懂)》本文介绍了C++中数组的初始化方法,包括一维数组和二维数组的初始化,以及用new动态初始化数组,在C++11及以上版本中,还提供了使用std::array... 目录1、初始化一维数组1.1、使用列表初始化(推荐方式)1.2、初始化部分列表1.3、使用std::

Springboot中分析SQL性能的两种方式详解

《Springboot中分析SQL性能的两种方式详解》文章介绍了SQL性能分析的两种方式:MyBatis-Plus性能分析插件和p6spy框架,MyBatis-Plus插件配置简单,适用于开发和测试环... 目录SQL性能分析的两种方式:功能介绍实现方式:实现步骤:SQL性能分析的两种方式:功能介绍记录

SQL 中多表查询的常见连接方式详解

《SQL中多表查询的常见连接方式详解》本文介绍SQL中多表查询的常见连接方式,包括内连接(INNERJOIN)、左连接(LEFTJOIN)、右连接(RIGHTJOIN)、全外连接(FULLOUTER... 目录一、连接类型图表(ASCII 形式)二、前置代码(创建示例表)三、连接方式代码示例1. 内连接(I

Python安装时常见报错以及解决方案

《Python安装时常见报错以及解决方案》:本文主要介绍在安装Python、配置环境变量、使用pip以及运行Python脚本时常见的错误及其解决方案,文中介绍的非常详细,需要的朋友可以参考下... 目录一、安装 python 时常见报错及解决方案(一)安装包下载失败(二)权限不足二、配置环境变量时常见报错及

Tomcat高效部署与性能优化方式

《Tomcat高效部署与性能优化方式》本文介绍了如何高效部署Tomcat并进行性能优化,以确保Web应用的稳定运行和高效响应,高效部署包括环境准备、安装Tomcat、配置Tomcat、部署应用和启动T... 目录Tomcat高效部署与性能优化一、引言二、Tomcat高效部署三、Tomcat性能优化总结Tom

Go语言利用泛型封装常见的Map操作

《Go语言利用泛型封装常见的Map操作》Go语言在1.18版本中引入了泛型,这是Go语言发展的一个重要里程碑,它极大地增强了语言的表达能力和灵活性,本文将通过泛型实现封装常见的Map操作,感... 目录什么是泛型泛型解决了什么问题Go泛型基于泛型的常见Map操作代码合集总结什么是泛型泛型是一种编程范式,允

C#多线程编程中导致死锁的常见陷阱和避免方法

《C#多线程编程中导致死锁的常见陷阱和避免方法》在C#多线程编程中,死锁(Deadlock)是一种常见的、令人头疼的错误,死锁通常发生在多个线程试图获取多个资源的锁时,导致相互等待对方释放资源,最终形... 目录引言1. 什么是死锁?死锁的典型条件:2. 导致死锁的常见原因2.1 锁的顺序问题错误示例:不同

Python调用另一个py文件并传递参数常见的方法及其应用场景

《Python调用另一个py文件并传递参数常见的方法及其应用场景》:本文主要介绍在Python中调用另一个py文件并传递参数的几种常见方法,包括使用import语句、exec函数、subproce... 目录前言1. 使用import语句1.1 基本用法1.2 导入特定函数1.3 处理文件路径2. 使用ex

C#使用yield关键字实现提升迭代性能与效率

《C#使用yield关键字实现提升迭代性能与效率》yield关键字在C#中简化了数据迭代的方式,实现了按需生成数据,自动维护迭代状态,本文主要来聊聊如何使用yield关键字实现提升迭代性能与效率,感兴... 目录前言传统迭代和yield迭代方式对比yield延迟加载按需获取数据yield break显式示迭

Spring常见错误之Web嵌套对象校验失效解决办法

《Spring常见错误之Web嵌套对象校验失效解决办法》:本文主要介绍Spring常见错误之Web嵌套对象校验失效解决的相关资料,通过在Phone对象上添加@Valid注解,问题得以解决,需要的朋... 目录问题复现案例解析问题修正总结  问题复现当开发一个学籍管理系统时,我们会提供了一个 API 接口去