性能测试-基础篇
每个人眼里对性能理解不一样,但是我们如果从一个App的维度来看:
用户眼中的性能:
(资料图片)
1、App使用崩溃,卡顿,延迟
2、App反应慢,使用页面无反应
那开发眼中的性能:
1、数据库设计是否合理
2、代码逻辑、算法是否可以优化
运维眼中的性能:
1、服务器资源使用是否合理
2、服务是否需要拓展
那我们测试眼中的性能是什么?
测试的任务是保证质量,所以咱们测试考虑性能应该上述都要考虑
1. 什么是性能测试定义:性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。加上性能分析调优
简单来说,自动化的测试工具就是我们用各种工具,比如JMeter 、LoadRunner...
正常、峰值以及异常负载条件就是我们的一系列方法,可以分为性能测试的分类
2. 性能测试方法(分类)负载测试 | 通过逐步加压的方法,找到预期性能指标,确定系统所能承载的饱和状态,如90%的用户响应时间不超过5s,cpu使用率不超过70%,是我们常用的一种测试 |
压力测试 | 与负载测试一样,压力测试也是同样逐步加压的方法,与负载测试不同的是,压力测试没有具体的性能指标,目的就是看什么条件下可以把系统压崩溃 |
并发测试 | 同一个时间内,多个虚拟用户同时访问同一个模块、同一功能,测试是否有性能问题 |
容量测试 | 是指数据库层面的,目标是获取数据库的最佳容量的能力,具体方式是在一定并发用户,不同的基础数据量下,查看数据库的处理能力,获取数据库的性能指标 |
可靠性测试 | 也叫稳定性测试或疲劳测试。指系统在高压情况下,长时间的运行系统是否稳定,如cpu使用率在70%以上,运行7*24小时,系统是否稳定 |
异常测试 | 也叫失败测试,系统架构方面的测试,如果在负载均衡架构中,要测试宕机、节点挂掉等情况系统的情况 |
出几道测试题,判断下是哪种测试:
1、用户上传10M以内的文件,响应时间不能超过3s
2、双十一期间,购物App是否可以承受大量用户使用功能
3、高并发下,系统运行24小时,系统是否稳定
4、对登录接口进行阶梯型性能压测,看最大的并发量是多少
3. 性能测试目的验证是否达到预期性能指标,找出性能瓶颈
4. 性能测试流程1.需求分析,制定指标
很多人觉得这一步很琐碎,其实很关键的,我们做功能测试的时候都需要知道预期结果,所以在性能测试中不能直接开干,也得需要分析,确认好指标
2.脚本开发,场景设置
这块包括一些准备工作,包括硬件、网络、操作系统,中间件,数据库、测试数据,监控工具等。 然后录制、开发、优化脚本
3.场景设置,监控部署好,执行测试
根据已经设计好的场景执行脚本,记录测试结果,根据监控得出各个性能指标
4.性能分析、性能调优对性能进行分析,如果性能有问题,进行调优
5.再次执行测试,性能分析。性能报告
调优后再次执行测试,看我们的调优是否符合,是否成功,没啥问题,得出测试报告
小问题:
1、在我们做性能测试前,我们必须先确认什么?
2、我们怎么知道性能是否有问题?
3、性能监控有什么作用?
5. 性能测试场景有三个比较重要的场景:基准场景、单接口负载场景、混合场景负载场景
1、基准场景
指单线程或者少量线程下对单接口进行测试,测试结果作为基准数据
目的:
验证测试脚本及测试参数的正确性,同时也可以验证脚本数据是否能够支持重复性测试等;
通过少量线程访问系统获取结果数据,作为对比参考基准;
根据测试结果,初步判断可能成为系统瓶颈的场景,并决定是否进行后续的测试;
2、单接口负载场景
指通过模拟多线程对单接口进行负载测试
选用线程数,逐步加压,得出相应的指标
3、混合场景负载测试
指的是增加线程数找出多个接口 TPS 的和对应的峰值
比如有人在浏览榜单,有人在抽奖,是最模拟真实环境下用户访问情况,多用户同时访问系统会调用系统各个接口,对各个系统产生并发压力
4、稳定性测试
系统在高压情况下,长时间的运行系统是否稳定,如cpu使用率在70%以上,运行7*24小时,系统是否稳定
5、异常测试
系统架构方面的测试,如果在负载均衡架构中,要测试宕机、节点挂掉等情况系统的情况
小问题:以用户登录、抽奖、奖励查询操作,按照上述测试场景来设计实际场景
序号 | 业务 | 场景 | 场景类型 |
1 | 登录 | 单接口,单用户并发压测 | 基准场景 |
2 | 抽奖 | 单接口,单用户并发压测 | 基准场景 |
3 | 奖励查询 | 单接口,单用户并发压测 | 基准场景 |
4 | 登录 | 单接口,梯度递增线程并发测试 | 单接口负载场景 |
5 | 抽奖 | 单接口,梯度递增线程并发测试 | 单接口负载场景 |
6 | 奖励查询 | 单接口,梯度递增线程并发测试 | 单接口负载场景 |
7 | 登录-抽奖-奖励查询 | 多接口,梯度递增线程并发测试 | 混合场景负载测试 |
8 | 登录-抽奖-奖励查询 | 多接口,性能瓶颈下80%以内的线程下,稳定并发24小时,系统稳定情况 | 混合场景负载测试 |
9 | 登录-抽奖-奖励查询 | CPU占有80%情况下,多接口的响应情况 | 异常测试 |
1、系统性能指标
事务:客户端发起的一个或多个请求(请求组成一个完整的操作),客户端接受从服务端返回的响应
比如:银行转账,银行1给银行2转账发起请求,银行2返回转账成功,银行2账户加钱,银行1收到成功返回,银行1账户扣钱,这一整个过程算一个事务
响应时间:
请求响应时间:客户端发起一个请求,到客户端接受从服务器返回的响应,整个过程的时间。响应时间一般随着并发用户数上升而不断升高事务响应时间:可能是由一个或多个请求组成,主要针对用户而言并发:
并发:是指一个时间范围内,比如1s内或2s内,多用户在系统进行同一操作绝对并发:同一时刻,同一时间点,并发用户同时发送请求相对并发:一段时间内,比如1s,并发用户同时发送请求并发用户数:同一单位时间内,对系统发起请求的用户数量,简称并发数。并发数越多,系统的负载就越高吞吐量:
吞吐量:单位时间内系统成功传输的数据量。吞吐量是数据层的指标,以MB、GB为单位TPS/QPS:
TPS:每秒钟处理的事务数,事务数并不等于请求数。tps是网络协议层的指标QPS:每秒查询率,只有查询,不建议用作性能指1、tps和吞吐量的区别?tps是网络协议层的指标,指每秒钟处理的事务数。吞吐量是数据层的指标,指单位时间内系统成功传输的数据量,在很多时候,我们把tps当成性能监控数据,因为tps高的则吞吐量就会高
2、tps和qps的区别?tps是每秒处理事务数,qps是每秒查询率。qps基本类似于tps,不同的是每访问一个页面(一个过程),会形成一个TPS,但是一次页面请求,可能会对服务器多次请求(资源、图片),这多次请求可以计入QPS。比如,对一个接口压测,接口内部不再请求其他接口,那么tps = qps简单来说,t可以是一个接口,也可以是一个业务的流程7. 了解:常用系统分层架构
系统的架构分层各不相同,但是对于我们来说,只需要关注上述三层即可,我们必须要先了解系统的分层架构,才能分块排查问题,不至于分析调优的时候不知道如何下手
那如果我们不知道如何下手的情况下,可以从底层到最外层的顺序排查。首先进行数据库测试,有问题就sql调优或数据库配置调优。数据库测好了,测api层,以此类推
标签:
-
2022-02-07 14:57:45
奇迹!绝杀!女足亚洲杯逆转夺冠!<
刚刚,中国女足上演逆转绝杀奇迹!她们在亚洲杯决赛中3:2力克韩国队,时隔16年再夺亚洲杯冠军!
-
2022-02-07 14:57:45
中国政府与阿根廷共和国政府签署共建“一带一路”谅解备忘录<
新华社北京2月6日电(记者安蓓)国家发展改革委6日称,国家发展改革委主任何立峰与阿根廷外交、国际贸易和宗教事
-
2022-02-07 14:57:43
中华人民共和国和阿根廷共和国关于深化中阿全面战略伙伴关系的联合声明(全文)<
新华社北京2月6日电中华人民共和国和阿根廷共和国关于深化中阿全面战略伙伴关系的联合声明一、应中方邀请,阿根廷
-
2022-02-07 14:57:40
春节假期国内旅游出游2.51亿人次<
春节遇冬奥,旅游年味浓。根据文化和旅游部数据中心测算,2022年春节假期7天,全国国内旅游出游2 51亿人次,同比
-
2022-02-07 14:57:40
中吉签署关于经典著作互译出版的备忘录 开启两国人文交流互鉴新阶段<
新华社北京2月6日电(记者史竞男)国家主席习近平6日会见来华出席北京2022年冬奥会开幕式的吉尔吉斯斯坦总统扎帕
-
2023-08-07 18:11:54
性能测试-基础篇
前言:性能是什么每个人眼里对性能理解不一样,但是我们如果从一个App
-
2023-08-07 18:05:10
每日优鲜美股盘前涨超63%,公司上周获融资近2亿元
鞭牛士8月7日消息,每日优鲜美股盘前拉升,涨幅扩大至63 13%,上个交易
-
2023-08-07 17:08:56
打通道路交通“微循环”!盐田城区增“颜”提“质”
深圳新闻网2023年8月7日讯(记者潘峰)“这条路设置了专门的单车道,我
-
2023-08-07 16:49:25
海南楼市经历五年“全域限购”企稳复苏 “自贸港”特色渐浓
昔日房地产“一业独大”的海南,经过五年“全域限购”后企稳复苏,住房
-
2023-08-07 16:17:24
贵阳有哪些中专学校?学校名称一览(贵阳有哪些中专艺校比较好)
贵阳市是贵州省的省会城市,也是一座教育资源丰富的城市。在这里,分布
-
2023-08-07 15:51:17
“小青椒”欢迎你 成都大运会志愿者的故事暖人心
本届赛事,共有来自成都35所高校的2万名赛会志愿者参与赛事志愿服务,
-
2023-08-07 15:06:36
海螺新材参展2023年中国国际门窗幕墙博览会
为进一步巩固公司品牌在行业内的影响力,将公司系统门窗、生态地板、生
-
2023-08-07 14:52:21
北向资金全天净卖出24.98亿元
8月7日,数据显示,北向资金全天净卖出24 98亿元,其中沪股通净买入10
-
2023-08-07 14:09:20
医药板块继续大跌,销售费用占比、营销模式引关注!多家上市公司回应
医药板块继续大跌,销售费用占比、营销模式引关注!多家上市公司回应,
-
2023-08-07 13:35:57
中国煤炭到港总量813.3万吨 环比减少12.3%
据上海有色网(SMM),截至8月7日,中国煤炭到港总量万吨,环比减少%。
-
2023-08-07 12:52:51
澳优奶粉含致癌物质(澳优奶粉积分)
小马来为大家解答以上问题。澳优奶粉含致癌物质,澳优奶粉积分很多人还
-
2023-08-07 11:55:25
EDG粉丝炸锅图,Uzi和meiko成关键小子,赛后通宵Rank训练
相信绝大多数的玩家对于edg战队还是比较熟悉的,作为lpl赛区的一支老牌
-
2023-08-07 11:27:20
【每日书画笺】《荆氏宴饮图》:中国南方最早的壁画
中江县塔梁子崖墓壁画,是中国南方最早的壁画,也是四川保存最完整的汉
-
2023-08-07 11:02:47
柳州毕业生就业“双向选择” 1769人达成初步意向
广西新闻网-南国今报柳州讯(记者巴方实习生荣丽莎)8月5日,柳州市202
-
2023-08-07 10:28:58
今日全球农产品重要资讯汇总(8月7日)
每日全球农产品重要资讯汇总(8月7日)1 印度农业部最新数据显示,因强
-
2023-08-07 09:56:19
开评:三大指数集体低开 证券板块跌幅居前
e公司讯,8月7日,三大指数集体低开,沪指涨0 34%,深证成指涨0 27%,
-
2023-08-07 09:41:29
国家防总办公室、应急管理部持续会商部署重点地区防汛救灾工作
工人日报-中工网记者王冬梅8月6日,国家防总办公室、应急管理部持续组
-
2023-08-07 09:10:16
杭州太子湾郁金香开花时间(太子湾郁金香花展来了
hello大家好,我是城乡经济网小晟来为大家解答以上问题,杭州太子湾郁
-
2023-08-07 08:52:45
昆仑万维:融资净偿还6795.39万元,两市排名第11(08-04)
昆仑万维融资融券信息显示,2023年8月4日融资净偿还万元;融资余额亿元
-
2023-08-07 07:45:33
投身绿色军营 逐梦无悔青春 ——玉树州杂多县2023年下半年征兵工作见闻
原标题:投身绿色军营逐梦无悔青春——玉树州杂多县2023年下半年征兵工
-
2023-08-07 06:14:11
落选秀+1!Shams:热火将签下前湖人前锋科尔-斯威德
落选秀+1!Shams:热火将签下前湖人前锋科尔-斯威德直播吧8月7日讯据名
-
2023-08-07 03:55:34
对联的正确贴法和图解(对联的正确贴法)
1、按古文学流传,上联三四声为仄音,应贴左边,下联一二声为平音,贴右边,
-
2023-08-07 00:51:18
破晓传说矿石分布在哪
游戏中有各种各样的策略你需要知道。只有知道了策略,才能快速取得游戏
-
2023-08-06 22:02:39
JDG夺得LPL夏季赛冠军 英雄联盟将进入“亚运时间”
原标题:JDG夺得LPL夏季赛冠军英雄联盟即将进入“亚运时间”5日晚,伴
-
2023-08-06 20:50:54
iPhone 12收不到微信消息怎么办
在使用iPhone12的过程中,有些用户可能会遇到无法收到微信消息的问题。
-
2023-08-06 19:51:28
李冰洁获成都大运会游泳女子800米自由泳金牌
新华社成都8月6日电在6日举行的成都大运会游泳比赛中,中国选手李冰洁
-
2023-08-06 18:39:57
最新路况!因施工,湖北高速这些路段禁止通行
G4201武汉绕城高速邹黄互通至藏龙岛互通段
-
2023-08-06 17:13:39
岸田出席广岛原子弹爆炸遇难者悼念活动,俄媒:他没提是美国投放的
来源:环球网【环球网报道】日本首相岸田文雄6日在广岛出席广岛原子弹
-
2023-08-06 16:28:33
【成都大运会】国际大体联秘书长:成都大运会让世界发现真正的中国
8月5日,国际大体联秘书长艾瑞克·森超在接受记者采访时表示,成都大运
-
2023-08-06 15:00:35
爱的歌词100首 值得的歌词
1、值得--郑秀文关于你好的坏的都已经听说愿意深陷的是我没有确定的以