性能测试-Jmeter

文章探讨了在满足2000人快速登录的业务需求下,如何选择JSP还是PHP开发Web电商网站,以及如何评估服务器配置。重点介绍了性能测试,包括负载测试、压力测试、并发测试等,强调了响应时间、资源使用和性能瓶颈的排查。同时,详细讲解了JMeter在性能测试中的应用和配置方法。
摘要由CSDN通过智能技术生成

业务需求:
2000人登录,登录不超过3秒:不可能同时找2k人
开发一款Web电商网站,使用JSP还是PHP:PHP写代码快得多,JSP写代码性能好,效率高
服务器配置是否支持2w人使用 测试2w人的服务器配置多少刚好够

关注点
响应时间
资源:
CPU
内存
硬盘

在这里插入图片描述

中间件,网络,数据库,架构设计是否存在瓶颈(配置问题,能力上限)

中间件:提供系统软件和应用软件之间连接的一种软件,简称应用服务器:如Tomcat,Apache…

目的:
评估当前系统能力 ----发布时
寻找性能瓶颈,优化性能 ----线上出问题,定位时使用
预估是否满足未来性能需求
瓶颈:看性能出问题时是什么因素导致的,内存,cpu,硬盘等

性能测试:验证软件需求是否满足业务需求场景,主要焦点是业务场景的满足(时间,空间)
时间:软件响应时间
空间:内存空闲率,服务器的磁盘使用率,cpu使用率
功能测试和性能测试相辅相成

在功能测试基本完成后进行

性能测试常用分类:
负载测试
压力测试
并发测试
稳定性测试
模拟真实场景测试
都要采取策略(性能基准指标测试:一个用户测试系统功能,查看响应时间和资源使用),作为后续测试结果的对比,可以评估未来 用户量增加,业务量上升响应时间下降趋势和资源使用的情况

负载测试:
负载:向服务器发送请求
逐步增加系统负载,测试系统性能的变化,并最终确定在满足系统指标的情况下,系统所能承受的最大负载量的测试(最优运行的最大负载量)

压力测试:
逐步增加系统负载,测试系统性能的变化,并最终确定在什么负载条件下系统性能处于失效状态,找到临界值
在这里插入图片描述
最优点是a,临界值是b

稳定性测试:
通过给系统加载一定的业务压力处于(0-a)(如cpu资源在70%-90%的情况下),运行一段时间检查系统是否稳定
通常测试一段时间即可,如24, 324, 724小时

并发测试:
模拟用户并发访问,测试多用户同时访问某一应用,模块或数据,观察系统是否存在问题

性能测试指标:
吞吐量:指的是单位时间内处理的客户端请求数量
在这里插入图片描述
并发数:并发测试的用户数
在这里插入图片描述
在这里插入图片描述
响应时间:
在这里插入图片描述
(web才有)点击数:
衡量web服务器处理能力的重要指标
该页面包含的元素(图片,链接,框架等)向web服务器发出的请求数数量。

错误率:
指系统在负载情况下,失败交易的概率,错误率=(失败交易数/交易总数)*100%
一般不超过千分之五。
稳定性较好的系统,其错误率应该由超时引起,既超时率(资源不足引起,增加资源解决)。

tps:
在这里插入图片描述
事务有大有小

QPS:
在这里插入图片描述
在这里插入图片描述
资源使用率:
在这里插入图片描述
CPU处理器
软件,程序运行时都需要实现把程序的代码和程序相关数据加载到内存里面,再运行起来。比如游戏加载。

性能测试流程:
在这里插入图片描述
性能需求分析的目标:
在这里插入图片描述

在这里插入图片描述
性能测试计划和方案:
项目背景
测试目标:确定此次性能测试的目标
人员安排:明确性能测试的时间,计划多少人来进行测试
时间进度
性能测试环境:尽量与生产环境保持一致,系统架构,软硬件配置,测试数据
测试工具:性能测试工具,监控工具
测试策略:确定性能测试类型和测试场景
单一场景:服务器同一时间只进行同一业务操作
混合场景:服务器同一时间处理多个不同业务操作
风险控制

搭建场景:
在这里插入图片描述
运行脚本:
在这里插入图片描述
系统性能调优:
在这里插入图片描述
性能测试报告:
在这里插入图片描述
LoadRunner:
在这里插入图片描述
ip欺骗就是:限制一个用户不能同时多个请求时,可以让多个用户同时来请求

Jmetea:
在这里插入图片描述
Jmeter文件目录介绍:
在这里插入图片描述
Jmeter基本操作步骤:
在这里插入图片描述
Jmeter原件作用域和执行顺序:
在这里插入图片描述
作用域:
在这里插入图片描述
原件执行顺序:
在这里插入图片描述
在这里插入图片描述
重点组件:
线程组,HTTP取样器,查看结果树
无论什么案例都需要以上三个组件

线程组:
在这里插入图片描述
在这里插入图片描述

线程组在测试计划默认是并行的
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
HTTP请求:
在这里插入图片描述
最底下参数如果是中文,需要点击编码,如果是post类型,在消息体数据中写

查看结果树:
在这里插入图片描述
取样器结果中的 Load time 为响应时间(ms)

在这里插入图片描述

Jmeter参数化:

用户定义的变量:
在这里插入图片描述

用户参数:
在这里插入图片描述

csv数据文件设置:
在这里插入图片描述
函数方式:
在这里插入图片描述

jmeter断言:

让脚本自动化执行的过程中,能够自动的判定执行结果是否正确,需要添加断言。

响应断言:
在这里插入图片描述
json断言:
在这里插入图片描述
断言持续时间:
在这里插入图片描述
关联:
在这里插入图片描述
正则表达式介绍:
在这里插入图片描述
正则表达式提取器:
在这里插入图片描述
后缀可以用调试取样器来查看,线程组右键添加取样器->调试取样器

xpath提取器:
在这里插入图片描述
xpath query: //标签名 , http取样器里要加后缀

json格式里用 $. 来表示根目录

Jmeter直连数据库:
在这里插入图片描述

逻辑控制器:

控制元件的执行顺序

如果(If)控制器:
在这里插入图片描述

循环控制器:
在这里插入图片描述
ForEach控制器:
在这里插入图片描述
在这里插入图片描述

定时器:

同步定时器:
在这里插入图片描述
常数吞吐量定时器:
在这里插入图片描述

Jmeter分布式:

在这里插入图片描述
相关注意事项:
在这里插入图片描述
分布式配置:
在这里插入图片描述

  • 21
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值