软件测试面试题:如何测试App性能?

news2025/3/12 19:13:42

目录

为什么要做App性能测试?

怎么做App性能测试?

下面几款开源工具:

APP性能测试关注哪些指标?

总结:


为什么要做App性能测试?

如果APP总是出现卡顿或网络延迟的情况,降低了用户的好感,用户可能会抛弃该App,换同类型的其他应用。如果APP的性能较好,用户体验高,使用起来丝滑顺畅,那该应用的用户粘性也必然会提高。

那我们该如何做App性能测试,以及该关注哪些指标呢?

怎么做App性能测试?

目前,基本上都使用现有的工具来进行性能测试,比如 Android studio 中有自带工具。

也有其他公司开源的一些 性能测试的工具,主要还是分为两种,一种是自研的,一种是外部提供的开源/收费的。

自研:一般每家公司都会有都会有自研的收集性能数据的平台,当然有些是购买的外部的服务,经过二次开发之后再供使用。

开源:各大公司都有一些开源的软件免费供大家使用。

 Python自动化测试学习交流群:全套自动化测试面试简历学习资料获取点击链接加入群聊【python自动化测试交流】:http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=DhOSZDNS-qzT5QKbFQMsfJ7DsrFfKpOF&authKey=eBt%2BF%2FBK81lVLcsLKaFqnvDAVA8IdNsGC7J0YV73w8V%2FJpdbby66r7vJ1rsPIifg&noverify=0&group_code=198408628

 

下面几款开源工具:

1、TraceView

TraceView 是Android平台配备一个性能分析的工具,用于分析计算性能,跟踪方法耗时导致的卡顿问题。它使用图形化的方式把结果呈现出来,直观的反应出代码的执行时间、执行次数。

如何使用:通过Android studio自带的traceview查看即可(Android profiler)。开发人员使用此工具的比较多,测试人员一般使用其他的开源App。

2、Emmagee

网易开发的一个Android性能监测工具,它可以可以监控单个应用性能, 并且支持用户自定义配置监控的采样频率以及性能的实时显示,最终会生成一份性能统计文件。

3、GT

GT(随身调)是腾 讯开源的,它支持iOS和Android两个手机平台。

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

利用GT,仅凭一部手机,无需连接电脑,即可对APP进行快速的性能测试(CPU、内存、流量、电量、帧率/流畅度等等)、开发日志的查看、Crash日志查看、网络数据包的抓取、APP内部参数的调试、真机代码耗时统计等。

4、soloPi

支付宝开源的Android自动化工具,主要有录制回放、性能测试、一机多控三项主要功能。

录制回放:SoloPi拥有录制操作的能力,用户只需要通过SoloPi执行用例步骤,SoloPi就能够将用户的操作记录下来,并且支持在各个设备上进行回放,这一切都能够在手机上独立完成。

性能测试: SoloPi能够记录待测应用的各项指标,你可以在悬浮窗中观察实时更新的数据,也可以对性能数据进行录制,在录制结束后查看图表;同时,Soloπ还支持性能加压,能够对CPU、内存进行限制,复现应用在性能较差、网络环境不佳场景下的表现。

一机多控:SoloPi支持通过操作一台主机设备来控制多台从机设备,不需要在各个设备上分别进行重复冗杂的兼容性测试,能够极大提升兼容性测试的效率。

市面上常见的性能测试工具就这几款,可以根据自己的需求选择。笔者最近常用SoloPi。

APP性能测试关注哪些指标?

1、启动耗时

App启动耗费的时间是我们一个重要的时间,其中又分为热启动和冷启动等。

测试启动时间比较依赖人为判断,一般我们是通过录屏,然后使用分帧的工具对 启动时屏幕渲染的过程做一个精细化的耗时分析。

优点:能真实反馈App的耗时;无侵入,离线分析,可对竞品进行精细化分析

缺点:判断时间比较依赖人肉眼判断,自动化工具无法判断。

2、单位时间耗电量、单位时间网络流量消耗

3、移动终端相关资源的利用率:不仅仅服务器端的CPU、内存、磁盘I/O、网路是性能测试关注的重要内容,移动端的CPU、内存也是我们需要关注的内容之一。

  • cpu    主要关注运行时cpu占有率和后台情况下的cpu占有率;
  • 内存    进入某个业务场景下的的内存增量, 和 在多链路执行国购的 内存总消耗。

4、业务响应时间、帧率(fps):由于人类的特殊结构,当看画面的帧率高于24的时候,就会认为是连贯的。fps越高,画面越流畅。

  • FPS    分为滑动时的FPS,如果涉及视频/动画/直播,还要该业务运行时的FPS。

以上,对APP性能测试做了个简单的介绍,了解了常见的工具以及性能指标,后续要学习的就是如何设计APP性能测试用例、APP性能测试的执行以及报告的编写等等~

总结:

感谢每一个认真阅读我文章的人!!!

我个人整理了我这几年软件测试生涯整理的一些技术资料,包含:电子书,简历模块,各种工作模板,面试宝典,自学项目等。欢迎大家点击下方链接加入群聊免费领取,群里还有大佬帮忙解答问题,千万不要错过哦。

 Python自动化测试学习交流群:全套自动化测试面试简历学习资料获取点击链接加入群聊【python自动化测试交流】:http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=DhOSZDNS-qzT5QKbFQMsfJ7DsrFfKpOF&authKey=eBt%2BF%2FBK81lVLcsLKaFqnvDAVA8IdNsGC7J0YV73w8V%2FJpdbby66r7vJ1rsPIifg&noverify=0&group_code=198408628

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/646907.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

java面经 MySQL

存储引擎--MyISAM和InnoDB的区别 使用场景 对比 MySQL隔离级别--未提交读,提交读,可重复读,序列化 隔离级别含义 隔离级别 英文名称 含义 脏读 不可重复读 幻读 未提交读 READ UNCOMMITTED 可读取其它事务未提交的结果 √ √ √…

管理类联考——逻辑——真题篇——阅读新题型真题

阅读新题型真题 Part B-2010- Part B Directions: Read the following text and decide whether each of the statements is true or false. Choose T if the statement is true or F if the statement is not true. Mark your answers on ANSWER SHEET. (10 points) Copying…

Android——基本控件之下拉列表:Spinner(九)

1.知识点 &#xff08;1&#xff09;掌握下拉列表Spinner的使用&#xff1b; &#xff08;2&#xff09;可以通过程序配置Spinner显示内容&#xff1b; &#xff08;3&#xff09;可以通过配置文件配置Spinner显示内容。 2.具体内容 在html中&#xff0c;下拉列表使用<…

直击网络安全简史,现阶段提升免疫力是关键 | 产业安全观智库访谈

当下&#xff0c;AIGC、区块链、云计算等新兴技术发展如火如荼&#xff0c;网络安全的内涵与外延也随之出现许多变化&#xff0c;安全攻防也从早期的黑客炫技手段&#xff0c;演变为如今产业发展的底座。过去的20多年&#xff0c;网络安全行业出现了哪些新变化&#xff1f;安全…

springboot项目外卖管理 day06-用户端进行展示与下单操作

文章目录 一、用户地址簿1.1、需求分析1.2、功能展示 二、菜品展示2.1、需求分析 2.2、代码开发2.2.1、代码开发-梳理交互过程 2.3、功能测试 3、购物车功能3.1、需求分析3.2、数据模型3.3、代码开发3.3.1、代码开发-梳理交互过程3.3.2、代码开发-准备工作 4、下单4.1、需求分析…

C++算法:加权连通图的最小生成树(Kruskal)

文章目录 前言一、什么是最小生成树二、代码实现1、构建图2、生成树 总结原创文章&#xff0c;未经许可&#xff0c;严禁转载 前言 最小生成树算法就是在众多可行的方案中选择代价最小的方法。生活中我们经常会遇到类似可以抽象成最小生成树的例子&#xff1a;比如你要给家中布…

MYSQL数据库管理1

目录 数据库的基本概念 数据&#xff08;Data&#xff09; 表 数据库 数据库管理系统&#xff08;DBMS&#xff09; 数据库系统 数据库系统发展史 第一代数据库 第二代数据库 第三代数据库 当今主流数据库介绍 SQL Server&#xff08;微软公司产品&#xff09; Or…

3年经验来面试20K的测试岗,连基本功都不会,还不如去招应届生

这段时间公司项目急缺人手&#xff0c;面了不少人&#xff0c;竟然没有一个满意的。一开始瞄准的就是中高级的水准&#xff0c;也没指望来技术大牛&#xff0c;提供的薪资在15-25K&#xff0c;面试的人很多&#xff0c;但结果让人失望。 从简历上来说都是3-4年工作经验&#x…

python---列表和元组(2)

切片操作的基本使用 使用切片的时候省略边界 切片操作是一个比较高校的操作,进行切片的时候,只是取出了原有列表的一个部分,并不涉及到数据的拷贝,假设有一个很大的列表,进行切片,切片的范围也很大,即使如此,切片操作仍然非常高校. 切片操作还可以指定"步长",类比…

Leangoo领歌敏捷项目管理场景示例

Leangoo领歌​​​​​​​是一款专业的敏捷开发管理工具&#xff0c;提供端到端敏捷研发管理解决方案&#xff0c;涵盖敏捷需求管理、任务协同、进展跟踪、统计度量等。 Leangoo领歌上手快、实施成本低&#xff0c;可帮助企业快速落地敏捷&#xff0c;提质增效、缩短周期、加速…

通过零代码ETLCloud实现金蝶云星空数据自动化同步

金蝶云星空系统介绍 金蝶云星空是一款基于云计算架构打造的全面财务管理软件&#xff0c;旨在为企业提供全方位、一站式的财务解决方案。其功能包括财务核算、现金管理、应付应收管理、成本核算、固定资产管理、税务管理等&#xff0c;覆盖了财务管理的各个方面&#xff0c;可…

【黄啊码】批量获取邮箱软件的下载和使用(外贸人必用的工具箱)

大家好&#xff0c;我是黄啊码&#xff0c;前两天有个朋友想通过邮箱实现获取邮箱地址&#xff0c;问我有没有类似的软件和教程&#xff0c;今天&#xff0c;他来了。。 该外贸软件可以按关键字收集电子邮件 使用内置的网站爬虫从网站中提取电子邮件和电话 与许多基于网络的工…

【DRAM存储器一】基本存储单元、阵列结构、读写原理

&#x1f449;个人主页&#xff1a;highman110 &#x1f449;作者简介&#xff1a;一名硬件工程师&#xff0c;持续学习&#xff0c;不断记录&#xff0c;保持思考&#xff0c;输出干货内容 参考书籍&#xff1a;《Memory Systems - Cache, DRAM, Disk》 目录 最小存储单…

深度学习笔记之Transformer(二)关于注意力分数的总结

深度学习笔记之Transformer——关于注意力分数的总结 引言回顾&#xff1a; Nadaraya-Watson \text{Nadaraya-Watson} Nadaraya-Watson核回归再回首&#xff1a; Seq2seq \text{Seq2seq} Seq2seq中的注意力机制注意力机制的泛化表示加性注意力机制缩放点积注意力机制 引言 上一…

Pytest教程__配置文件-pytest.ini(4)

pytest配置文件可以改变pytest的默认运行方式&#xff0c;它是一个固定的文件名称pytest.ini。 存放路径为项目的根目录 解决中文报错 在讲解配置文件的可用参数前&#xff0c;我们先解决一个高概率会遇到的问题&#xff0c; 那就是在pytest.ini文件 中不能使用任何中文符号&…

【Webpack】Webpack

❤️ Author&#xff1a; 老九 ☕️ 个人博客&#xff1a;老九的CSDN博客 &#x1f64f; 个人名言&#xff1a;不可控之事 乐观面对 &#x1f60d; 系列专栏&#xff1a; 文章目录 WebpackWebpack是干嘛的代码分割摇树优化模块热替换 Webpack Webpack是干嘛的 Webpack是用来打…

<Python全景系列-2> Python数据类型大盘点

欢迎来到我们的系列博客《Python全景系列》&#xff01;在这个系列中&#xff0c;我们将带领你从Python的基础知识开始&#xff0c;一步步深入到高级话题&#xff0c;帮助你掌握这门强大而灵活的编程语法。无论你是编程新手&#xff0c;还是有一定基础的开发者&#xff0c;这个…

一种自适应异常数据点消除方法

1.问题 在现实生活中&#xff0c;采集到的信号&#xff0c;会有一些噪点需要去除&#xff0c;否则这部分数据在比如时域空间直接进行分析时就会遇到非常难以厘清的逻辑要处理&#xff0c;各种异常。 肉眼看去&#xff0c;那些噪点是清清楚楚的。如何去除呢&#xff1f; 这里给…

快速搭建自己的跑腿服务平台:开源跑腿系统源码分享

在现代社会&#xff0c;人们生活节奏加快&#xff0c;很多时候需要在短时间内完成各种任务&#xff0c;如购物、送货等。这就催生了跑腿服务的兴起。跑腿服务平台为用户提供一站式服务&#xff0c;让用户可以轻松地找到可靠的跑腿服务&#xff0c;并实现便捷快速的服务体验。 …

基于Java线上旅行信息管理系统设计实现(源码+lw+部署文档+讲解等)

博主介绍&#xff1a; ✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战 ✌ &#x1f345; 文末获取源码联系 &#x1f345; &#x1f447;&#x1f3fb; 精…