【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

相关文章

JVisualVM之Java性能监控与调优利器详解

《JVisualVM之Java性能监控与调优利器详解》本文将详细介绍JVisualVM的使用方法,并结合实际案例展示如何利用它进行性能调优,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全... 目录1. JVisualVM简介2. JVisualVM的安装与启动2.1 启动JVisualVM2

Java使用MethodHandle来替代反射,提高性能问题

《Java使用MethodHandle来替代反射,提高性能问题》:本文主要介绍Java使用MethodHandle来替代反射,提高性能问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录一、认识MethodHandle1、简介2、使用方式3、与反射的区别二、示例1、基本使用2、(重要)

MySQL查看表的最后一个ID的常见方法

《MySQL查看表的最后一个ID的常见方法》在使用MySQL数据库时,我们经常会遇到需要查看表中最后一个id值的场景,无论是为了调试、数据分析还是其他用途,了解如何快速获取最后一个id都是非常实用的技... 目录背景介绍方法一:使用MAX()函数示例代码解释适用场景方法二:按id降序排序并取第一条示例代码解

python多线程并发测试过程

《python多线程并发测试过程》:本文主要介绍python多线程并发测试过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、并发与并行?二、同步与异步的概念?三、线程与进程的区别?需求1:多线程执行不同任务需求2:多线程执行相同任务总结一、并发与并行?1、

IDEA实现回退提交的git代码(四种常见场景)

《IDEA实现回退提交的git代码(四种常见场景)》:本文主要介绍IDEA实现回退提交的git代码(四种常见场景),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.已提交commit,还未push到远端(Undo Commit)2.已提交commit并push到

python进行while遍历的常见错误解析

《python进行while遍历的常见错误解析》在Python中选择合适的遍历方式需要综合考虑可读性、性能和具体需求,本文就来和大家讲解一下python中while遍历常见错误以及所有遍历方法的优缺点... 目录一、超出数组范围问题分析错误复现解决方法关键区别二、continue使用问题分析正确写法关键点三

JAVA数组中五种常见排序方法整理汇总

《JAVA数组中五种常见排序方法整理汇总》本文给大家分享五种常用的Java数组排序方法整理,每种方法结合示例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧... 目录前言:法一:Arrays.sort()法二:冒泡排序法三:选择排序法四:反转排序法五:直接插入排序前言:几种常用的Java数组排序

正则表达式r前缀使用指南及如何避免常见错误

《正则表达式r前缀使用指南及如何避免常见错误》正则表达式是处理字符串的强大工具,但它常常伴随着转义字符的复杂性,本文将简洁地讲解r的作用、基本原理,以及如何在实际代码中避免常见错误,感兴趣的朋友一... 目录1. 字符串的双重翻译困境2. 为什么需要 r?3. 常见错误和正确用法4. Unicode 转换的

PyTorch高级特性与性能优化方式

《PyTorch高级特性与性能优化方式》:本文主要介绍PyTorch高级特性与性能优化方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、自动化机制1.自动微分机制2.动态计算图二、性能优化1.内存管理2.GPU加速3.多GPU训练三、分布式训练1.分布式数据

C语言中的常见进制转换详解(从二进制到十六进制)

《C语言中的常见进制转换详解(从二进制到十六进制)》进制转换是计算机编程中的一个常见任务,特别是在处理低级别的数据操作时,C语言作为一门底层编程语言,在进制转换方面提供了灵活的操作方式,今天,我们将深... 目录1、进制基础2、C语言中的进制转换2.1 从十进制转换为其他进制十进制转二进制十进制转八进制十进