7年经验之谈 —— 如何高效的开展app的性能测试

61 阅读5分钟

img img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

了解详情》docs.qq.com/doc/DSlVlZExWQ0FRSE9H

image-20210817201225068

现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:110685036

APP性能测试怎么做

下面我们分别来看一下:

性能测试场景的设计

场景可能是一个操作的不断重复,也可能是几个操作的组合再重复,对于性能测试的场景来说,他一定有重复的操作或者持续的操作,目的是通过重复或者持续的操作,把性能问题放大到一定程度,能够让我们发现问题。

举个栗子:以B站推荐tab为例,想测试feed滑动情况下的性能表现,那性能场景可以设计成,feed滑动50次,每次滑动间隔2s。

性能指标的定义

常见的移动端性能指标有:内存、cpu、帧率、卡顿数、wakp up数、展示时长等,关注什么性能指标是依托于我们的性能测试场景。

举个栗子:以B站推荐tab为例,当我们冷启APP进入推荐tab的时候,更关注数据展示时长,滑动场景更关注卡顿数,为不同场景设计合理的性能指标也是我们需要认真考虑的。

规范化执行流程

场景和指标都定义好了以后,就要开始执行了,这里要求要规范化执行,规范化执行不是简单的按照场景的定义去执行就好,而是要有很多关注的点。

可以定义的规范有哪些:

 - 场景开始执行前需要等待多少s
 - 执行后需要等待多少s
 - 每次测试需不需要冷启或是必须重新安装
 - 安装好需要等待多久才可以开始测试
 - 测试账号、测试数据、设备、网络需不需要固定

每一个点都可能影响的性能数据的准确性,必须要定义规范,每次都要按着规范去执行,而且这个规范是动态,随着我们不断的测试,会发现很多影响性能数据的问题,都必须定制规范,加以规避。同时好的规范能够未我们后面进行性能数据分析打下基础。

image-20210817203621029

性能数据数据收集

性能数据收集可能是整个客户端性能测试中最简单的部分了,有成熟的工具perfdog可以使用,方便简单,也可以使用商业化的perfdog service实现自动化的性能数据收集,就是需要花钱。

性能数据分析

在收集到性能数据之后,就要去分析数据,如何分析,下面我简单说一下,后面会出文章专门说如何对性能数据进行分析

  • 走势图,从走势图上我们大致可以看出该场景在当前版本的性能表现,可以得出以下结论:

    • 和之前版本的走势图进行对比,性能指标的波动情况
    • 性能指标峰值、场景的均值以及涨幅的变化
  • 场景的起始值与之前版本的变化

  • 场景结束后的值与之前版本的变化

性能问题定位

在进行完性能数据分析以后,如果有问题,就需要去定位问题是那一块业务的问题或者是哪一个mr引起的问题,就需要回溯。

  • 先找开发,和开发沟通一下,看能否根据问题表象确定问题,如果确认不了,就需要测试定位是哪个mr合入引起的
  • 列出本次版本合入所有mr,筛选出那些mr是性能问题所在的业务
  • 找mr合入前后的包重新跑,确认每个mr是否有影响
  • 当确定是哪个mr合入引起的性能问题后,再次和开发沟通

性能测试报告

img img img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!

开源项目:docs.qq.com/doc/DSlVlZExWQ0FRSE9H