性能测试的一些概念知识

一、性能测试——测试的是软件的特性
(软件质量的特性:功能、安全、可靠性、可维护、性能、可移植性……)
注:功能——软件能不能跑
性能——跑得多快(单位时间内响应时间?、单位时间内处理的数量(并发量)?)
工具:性能测试——Jmeter
软件质检中心——LoadRunner (付费50、封闭)

二、性能测试分类:
1.在服务器的接口性能测试,占比80%以上
2.终端UI 性能测试(web绚烂、App反应)占最后的20%
假设场景:需求:好品App,同时支持1万人在线
思路:下载App(微信小程序、web端、H5页面)打开,1万人同时它。
本质:其实他们都是通过HTTP协议,连接到后台服务器(web服务器+数据库服务器MYSQL +基于Linux操作系统上)——模拟器:模拟App、web、H5、微信小程序——>Jmeter/ LR 就是这个模拟器(模拟终端向服务器发起请求的工具)

三、性能测试目的:测试在服务器一定负荷下,响应时间、吞吐量、稳定性情况。
(即看Jmeter/ LR 响应结果有没有报错,超时,各指标情况)
再根据上面的指标进行评估系统的能力。
一般其中会用到的方法:逐步加压。
场景如:好品web性能评估汇报好品web网,在1000用户同时(并发量)进行以下操作:(性能场景)
1.登录
2.查询课程
3.播放视频
4.评价课程消息成功率:100%(成功率)平均响应时间为0.03s (响应时间)CPU使用率:80%,内存使用率:90%,网络宽带:50M,磁盘空间:50%(资源使用率)
[招标,投标的指标]
注:1.性能测试的重点:关键业务领域的性能才是我们的测试重点
2.测试是在时间、成本、质量之间的权衡

四、性能调优(响应时间、并发量、负载情况、稳定性)
大致走向:评估——>加压——>bug,瓶颈——>分析,调优——>长时间跑(稳定性)
当然:很多项目不需要性能测试,比如:简单、公司内部人员使用(使用人数少)的软件
要做性能测试的,一般对时间要求,空间要求会比较高。

五、性能测试的指标:
①响应时间:对请求做出响应所需要的时间(端到端的时间)可以用网络时间ping 命令258原则

②并发用户量:用户数分三种
1.系统用户数——部署用户环境,做的时候要初始化环境:注册量[影响磁盘空间,查询]
2.在线用户数——占着不干活,[影响web——Session,和内存要求最大]
3.并发用户数——分为严格并发[相同行为]、广义并发[不同行为]
注意:
1.没有经过初始化的性能环境=没有作用的环境
2.遇到空间差异问题——找运维:Linux系统注入网络延时的方法
3.数据库数据——数据库dump,或者知道数据库的表格格式,在脚本创建模拟一个
4.并发数目一般原则:
并发量=日活×20%(登录)
并发量=总平台×20%(搞活动)
5.CPU ——时间片
6.web——Session
7.做性能测试前必须初始化环境——warm up 热机,磁盘调用内存,让用户跑进去,场景更真实

③吞吐量:单位时间内处理的字节量

④TPS :每秒钟处理的字节数

⑤思考时间:模拟用户行为,更加真实

⑥成功率错误人数、网络延时

⑦响应时间

⑧内存

⑨CPU

⑩网络延时

!记忆:多快好省 !
多——并发量
快——延时、响应时间
好——稳定性(长时间运行)
省——资源使用率思考时间——像人一样

你可能感兴趣的:(笔记)