性能测试常见测试方法
备注:将会随着经验,后期不断进行更新维护。
1.鉴定一个软件提供的服务是好还是坏、一般查看服务器瓶颈如硬盘、内存
(1)评估系统的能力
(1)识别体系中的弱点
(1)系统调优
(1)验证稳定性(resilience)可靠性(reliability)
2.测什么:web服务器、ftp服务器、数据库
系统功能验证、
业务场景分析、
确定性能目标,制定测试计划、
测试场景设计、
测试用例设计(录脚本/录接口)、
脚本开发,检查点、参数化、集合点、关联等、
测试脚本执行、
测试结果记录/统计、
测试结果分析(指标分析)、
优化建议、输出性能测试报告
1.响应时间
(1)页面响应时间需要遵守2、5、10原则
(2)客户端响应时间+网络响应时间+服务器响应时间
(3)内存泄漏,内存溢出
2.服务器硬件指标:CPU、磁盘I/O、网络、内存使用率
3.最大访问数,最大业务处理量
4.7*24小时的业务访问,连续开启不间断的数据访问
5.并发数
(1)系统用户数,系统注册用户的总数
(2)在线用户数,当前统计时正在访问的用户总数
(3)并发用户数,同一时刻让服务器产生压力的用户数
6.吞吐量
(1)指在一次性能测试过程中网络上传输的数据量的总和,也就是服务器承受的压力
(2)通常指单位时间内网络上传输的数据量,也可以指单位时间内处理的客户端请求数量/服务器返回的数据量
7.每秒通过事务数(TPS:Transaction Per Second),每秒钟系统能够处理的交易或事务的数量,它是衡量系统处理能力的重要指标。
8.每秒单击数,每秒钟用户向Web服务器提交的HTTP请求数,这是Web应用特有的一个指标。
1.Avg Rps: 平均每秒钟响应次数=总请求次数 / 秒数;
2.Successful Rounds:成功的请求;
3.Failed Rounds :失败的请求;
4.Successful Hits :成功的点击次数;
5.Failed Hits :失败的点击次数;
6.Hits Per Second :每秒点击次数;
7.Successful Hits Per Second :每秒成功的点击次数;
8.Failed Hits Per Second :每秒失败的点击次数;
1.性能:验证对系统是否具有自己宣称的能力,这种方法是对系统性能已经有了解的前提,并对需求有明确的目标,在已经确定的环境下进行的。
2.基准:在一定的软件、硬件和网络环境下,模拟一定数量的用户运行一种或多种业务,将测试结果作为基线数据,供后续测试活动参考。
3.负载:通过在被测系统上不断加压,直到性能指标达到极限,例如“响应时间”超过预定指标或某种资源已经达到饱和状态。
4.压力:压力测试也称为强度测试,主要测试系统在一定饱和状态下,例如CPU、内存在饱和使用情况下,系统能够处理的会话能力,以及系统是否会出现错误。
5.容量:
6.并发:并发测试方法通过模拟用户并发访问,测试多用户并发访问同一个应用、同一个模块或者数据记录时是否存在死锁或者其他性能问题。
7.配置:配置测试方法通过对被测系统的软/硬件环境的调整,了解各种不同配置对系统的性能影响的程度,从而找到系统各项资源的最优分配原则。
8.可靠性:在系统加载一定业务压力的情况下,使系统运行一段时间,以此检测系统是否稳定。
1.最佳并发数,服务器没有问题的情况下,通过加减并发数来找到并发数和吞吐量(s)的平衡点
2.最大并发数,不断增加并发数,达到一个值后,服务器出现请求超时(5xx)
3.最大tps,结合吞吐量折线图,找到折线的峰值
4.性能测试主要关注点:响应时间、服务器硬件指标、最大访问数,最大业务处理量、初步判断系统瓶颈、7*24小时的不间断的业务访问
5.系统瓶颈存在于哪些方面
(1)网络
(2)服务器:应用程序、WEB服务器、数据库服务器、操作系统
6.怎样判断网络瓶颈/服务器瓶颈
(1)网络带宽瓶颈:增加并发用户数,吞吐量的曲线增加到一定程度后出现变化缓慢,甚至平坦
(2)服务器瓶颈:增加并发用户数,点击率曲线出现变化缓慢或者平坦
7.jmeter是否完全模拟用户操作,看是否写入数据库
1.Jmeter工作原理
2.常用功能
3.badboy用法
4.参数化:
(1)前置处理器–用户参数、配置 (2)元件–csv data set config filename、
(3)函数助手-CSVRead、
(4)配置元件-User Defined Variables(用户定义的变量)、
(5)函数助手–random
5.集合点(秒杀):Number of Simulated Users to Group by,按组分组的模拟用户数、
timeout in milliseconds,超时、
结合场景来理解
6.检查点
7.断言(3+1)
(1)响应断言
(2)断言持续时间
(3)返回结果大小断言
(4)断言结果
注意:如果断言的内容为具体值,且请求参数实现了参数化,记得修改断言内容为变量
8.关联,动态关联:
(1)why
(2)how
请求1添加后置处理器-正则表达式提取器
填写字段:引用名称、正则表达式、模板、匹配数字、缺省值
请求2的请求参数值替换变量
运行,查看结果树中验证是否关联成功
9.性能测试结果分析
10.性能优化建议
11.常用监听器
(1)查看结果树
(2)聚合报告
(3)summary report
(4)断言结果
本文详细介绍了性能测试的目的,包括鉴定系统能力、识别弱点和验证稳定性。讲解了性能测试的整体流程,从功能验证到测试结果分析,重点讨论了响应时间、服务器硬件指标、并发用户数和吞吐量等核心关注点。同时,提到了不同类型的性能测试,如负载、压力和并发测试。还探讨了如何分析性能测试结果,识别系统瓶颈,并给出了JMeter在性能测试中的应用和实践技巧。
416

被折叠的 条评论
为什么被折叠?



