1. app的性能测试怎么测试
(1) 非功能测试 app测试的一个重要方面是app的非功能需求。移动app在推出市场或进行进一步开发前,测试人员有一定的职责做该类需求的跟踪工作。早期开发阶段要进行的第一个测试应该是实用性测试。通常是由alpha用户或同事进行的。走进一家咖啡馆或餐厅,问问里面的人他们的app使用情况。让他们看看现阶段开发的第一个版本并收集反馈,看看用户是否能很好地使用新功能,以便得出第一印象。(2) 功能测试 每项开发的新功能都需要进行测试。app测试中功能测试是一个重要方面。测试人员应该要进行手动测试和后期的自动化测试维护。刚开始测试时,测试员必须把app当做"黑盒"一样进行手动测试,看看提供的功能是否正确并如设计的一样正常运作。除了经典软件测试,像点击按钮、提交订单看看会发生什么,测试员还必须执行更多功能的app测试。 除了整个手动测试过程,测试自动化对移动app也很重要。每个代码变化或新功能都可能影响现存功能及它们的状态。通常手动回归测试时间不够,所以测试员不得不找一个工具去进行自动化回归测试。现在市面上有很多自动化测试工具,有商业的也有开源的,面向各个不同平台,如Android,iPhone,WindowsPhone7,BlackBerry以及移动Webapp。根据开发策略和结构,品质管理测试专家需找出最适合他们环境的自动化工具。(3) 客户端性能测试 一个App做的好不好,不仅仅只反应在功能上。被测的app在中低端机上的性能表现也很重要。比如:一个很好玩的游戏或应用,只能在高端机上流畅运行,在中低端机上卡的不行,也不会取得好的口碑。 关于App的性能测试,我们比较关注的参数有:CPU,内存,耗电量,流量,FPS。同时也需关注一下App的安装耗时和启动耗时。目前大家可能比较困惑的一个问题,多高的CPU,内存,耗电量,流量,FPS才算是符合发布的值呢?这里可以告诉大家,可以参考精品游戏的一些数值,将自己研发的app与业内精品的app数据做对比。(4) 适配兼容测试市面上目前存在的移动设备五花八门,
2. APP性能测试(1):FPS测试
adb 计算帧率: https://zhuanlan.hu.com/p/67056913
adb 计算帧率: https://www.huaweicloud.com/articles/12566219.html
帧率:FPS是图像领域中的定义,是指画面每秒传输帧数,通俗来讲就是指动画或视频的画面数。30FPS是一般录像的常用帧数,30FPS在快速动作的时候会感觉不流畅。60FPS是一般游戏的常用帧数。
绝大部分时间两者(Android和IOS)都能保持60FPS左右的满帧率。但都会有偶尔的掉帧。并且Android上要比IOS上严重很多。掉帧导致卡顿,用户必然会感觉到掉帧那一刻的不流畅。
FPS是图像领域中的定义,是指画面每秒传输帧数,通俗来讲就是指动画或视频的画面数。FPS是测量用于保存、显示动态视频的信息数量。每秒钟帧数愈多,所显示的动作就会愈流畅一般来说,Android设备的屏幕刷新率为 60帧/s ,要保持画面流畅不卡顿,要求每一帧的时间不超过 1000/60=16.6ms ,这就是16ms的黄金准则,如果中间的某些帧的渲染时间超过16ms,就会导致这段时间的画面发生了跳帧,因此原本流畅的画面变发生了卡顿。
FPS 通常作为衡量应用是否流畅的标准。
FPS 即 Frames per Second(每秒显示的帧数),用于测量显示帧数的度量。帧数为 0 说明页面处于静止,只要页面动起来,这个帧数就会有变化,然后再趋于静止,页面滚动起来帧数整体呈现 “非对称” 抛物线走势。接下来看一张图直观感受一下:
通过上图我们能看出 FPS 值的大小对画面流畅度的影响,每一帧都是静止的图像,快速连续地显示帧便形成了运动的假象,因此高帧率可以得到更流畅、更逼真的动画。
帧延迟的高低可以通过帧时间(Frame Time)来判定。我们参考显示器的 60Hz 刷新率进行计算,它意味着每秒刷新 60 帧,每帧大约用时 16.7 毫秒。画面中每帧生成时间如果与 16.7 毫秒很接近,那么全程画面的帧数就很稳定,更接近理想的 60 帧每秒。
如果每帧生成时间高于 16.7 毫秒,也就意味着渲染这一场景所花费的时间比其他帧更多,造成画面跟不上,进而带来显示卡顿。
手机的 CPU 处理速率、屏幕尺寸、内存及显存的大小都影响着 APP 帧率的大小,这些因素在一定程度上约束着准备数据和数据传到屏幕的时间。再者,GUI 软件架构在一定程度上也影响着应用帧率的大小。
在同等机器环境下,除去 CPU、屏幕尺寸及系统 GUI 等固有数据传输耗时,要提升应用 FPS 就要减少视图渲染的时间。
1、尽量不要在刷新时做耗时操作,例如准备数据,创建图片,图片变换等,数据和图片都应该在之前就加载到内存中,图片变换用 canvas 的变换来实现。
2、同一个界面中多个动画重叠出现时,尽量将动画的刷新过程统一刷新,避免频繁的 invalidate,尤其是多个动画有时序上的关系时更应该统一。
3、尽量使用带有参数的 invalidate 来刷新,这样可以减少很多运算量。
APP也需要关注FPS、Jank及卡顿率。只是需要区分使用场景,如:
只需关注FPS,理论FPS应该为0,否则,说明有冗余刷新,容易引起手机发热及耗电。
只需关注FPS,FPS处于合适值即可,无需高频刷新。
需要关注FPS、Jank及卡顿率。手机交互灵敏度就是来源于此,Android系统才出黄油计划Jank。一般滑动状态下,帧率越高越好,Jank越小越好。
需要关注FPS、Jank及卡顿率,视频卡顿直接影响用户。视频一般帧率18-24帧,Jank=0。比如微信播放视频、视频播放器等。
注:
引用来源
3. 如何高效开展app的性能测试
从网上查了一下,貌似也没什么特别的定义,我这边根据自己的经验给出一个自己的定义,如有巧合纯属雷同。
客户端性能测试就是,从业务和用户的角度出发,设计合理且有效的性能测试场景,制定各性能场景下的客户端性能指标(内存、CPU、卡顿数、帧率、电量、加载时长等),并制定规范化的执行流程,按照执行标准执行性能场景同时使用性能测试具收集性能数据,并对数据进行分析,如果有性能问题并对问题进行定位,配合开发进行修复验证发布,最后输出完整的性能报告。
性能测试并不是说我们上来找个工具,随便跑个场景,拿到数据,输出个报告,就可以了。每一步都应该做到有的放矢,从而体现出测试人员的专业性。
下面我们分别来看一下:
场景可能是一个操作的不断重复,也可能是几个操作的组合再重复,对于性能测试的场景来说,他一定有重复的操作或者持续的操作,目的是通过重复或者持续的操作,把性能问题放大到一定程度,能够让我们发现问题。
举个栗子:以B站推荐tab为例,想测试feed滑动情况下的性能表现,那性能场景可以设计成,feed滑动50次,每次滑动间隔2s。
可以定义的规范有哪些:
每一个点都可能影响的性能数据的准确性,必须要定义规范,每次都要按着规范去执行,而且这个规范是动态,随着我们不断的测试,会发现很多影响性能数据的问题,都必须定制规范,加以规避。同时好的规范能够未我们后面进行性能数据分析打下基础。
性能数据收集可能是整个客户端性能测试中最简单的部分了,有成熟的工具perfdog可以使用,方便简单,也可以使用商业化的perfdog service实现自动化的性能数据收集,就是需要花钱。
在收集到性能数据之后,就要去分析数据,如何分析,下面我简单说一下,后面会出文章专门说如何对性能数据进行分析
在进行完性能数据分析以后,如果有问题,就需要去定位问题是那一块业务的问题或者是哪一个mr引起的问题,就需要回溯。
性能测试报告的目的是给出当前版本的性能表现情况,需要包含一些核心的模块
4. 安卓app的性能测试
1.响应时间
冷启动,执行adb命令:
adb shell am start -W packageName/ActivityName
热启动,按back键盘,再执行 adb shell am start -W packageName/ActivityName
2.测试内存:
adb shell mpsys meminfo packageName
获取应用包名和Activity:adb shell mpsys window | findstr mCurrentFocu
3.CPU:
使用adb命令:
1) top -m -s cpu |grep packageName
top cpu 参数:
-m 显示最大数
-s 按指定行排序
-t 显示进程名称
-n 在退出前刷新几次
-d 刷新间隔
4.耗电量:
使用adb命令:adb shell mpsys batterystats |grep packageName
5. 软件测试报告性能如何测试
一个想要留住用户的APP,不仅要内容输出新颖,功能也要齐全,但有一个必要的前提是APP在使用过程中不卡顿或加载缓慢.在这种情况下,这会导致更差的用户体验,直接使用或不使用该应用程序。在这种情况下,需要进行应用程序性能测试。
想要做好app性能测试,还需要遵守相关程序,才能万无一失。那么app性能测试的流程是怎样的,你对app性能测试了解多少呢?下面我来告诉你。
一、APP性能测试是什么意思?
APP性能测试通常分为服务端性能测试和移动端性能测试。通过各种测试工具,对APP性能进行测试评估,发现存在的缺陷,保证软件安装安装后的正常使用。
二、APP性能测试的重点是什么?
1.资源消耗;分别测试空闲状态、中等规格和满状态下的资源消耗。
2.内存:一般APP应用不会占用太多手机内存资源。可以测试不同强度下应用内存和系统内存的变化,以及应用的整体流畅度等。
3、电量使用:首先了解手机在正常情况下的电池使用时间。关闭所有应用后,再启动待测APP,看看耗电增加了多少,取差值。
4、网络流量消耗;测试第一次启动时的流量值和运行一段时间后的流量值。
5.响应速度/时间;分别测试APP首次/非首次启动、有网/无网的加载时间。
6.兼容性测试;不同手机版本的兼容性测试。
三、常见APP性能测试方法
APP性能测试的方法有很多种。有些指标可以人工计算,有些性能测试必须借助软件测试工具进行。测试人员一方面可以使用手机内置的测试工具进行应用测试,另一方面可以使用Jmeter等自动化测试工具进行测试。
四、如何做好APP性能测试?
APP性能测试也是APP测试的一部分。测试人员需要具备良好的测试技术能力。同时,测试环境、网络带宽等硬件条件也是做好APP性能测试的基础。为了做好APP性能测试,建议企业可以通过第三方测试机构进行APP测试。
6. APP如何做性能测试
工具/原料
apk文件
APP加密网站
方法/步骤
安装、卸载测试:安装测试、卸载测试。测试软件在不同操作系统(Palm OS、Symbian、Linux、Android、iOS、Black Berry OS 6.0、Windows Phone 7)下安装是否正常。软件安装后的是否能够正常运行,安装后的文件夹及文件是否写到了指定的目录里。
7. 如何对安卓市场App进行性能测试
对App性能测试一般来说有:安装和启动时间、内存实时监控、卡顿、闪退、崩溃、CPU的占用、流量的耗用等等,传统的方式比较费时费力,想要对App进行性能监测你可以了解下听云App,通过植入探针主动探测移动应用性能,帮助开发者及时发现应用性能隐患,采集真实用户移动设备上的应用性能,帮助企业了解真实的用户体验,跟踪App应用移动设备端用户进行屏幕操作时的交互性能,还可以深入追踪HTTP错误、网络错误和崩溃原因,从而提高APP的质量。