目录
嗨咯铁汁们,很久不见,我还是你们的老朋友凡叔,这里也感谢各位小伙伴的点赞和关注,你们的三连是我最大的动力哈,
五、临界区控制器(critical section Controller) 作用:临界区控制器确保其子节点下的取样器或控制器将被执行(只有一个线程作为一个锁)
六、生命周期/运行周期控制器(Runtime Controller) 作用:用于控制该控制器下的取样器/控制器的运行时间
七、仅一次控制器(once only controller) 作用:在测试计划执行期间,该控制器下的子结点对每个线程只执行一次,登录场景经常会使用到这个控制器。
八、转换控制器(Switch Controller) 作用:Switch控制器通过给该控制器中的Value赋值,来指定运行哪个采样器。有两种赋值方式:
九、当/判断控制器(While Controller) 作用:运行其子节点下的取样器/控制器,直到条件为“假”
十、事务控制器(transaction controller) 作用:生成一个额外的采样器来测量其下测试元素的总体时间;值得注意的是,这个时间包含该控制器范围内的所有处理时间,而不仅仅是采样器的
前言:
嗨咯铁汁们,很久不见,我还是你们的老朋友凡叔,这里也感谢各位小伙伴的点赞和关注,
你们的三连是我最大的动力哈,
【文章末尾给大家留下了大量的福利哟】
1. Jmeter简介
Apache JMeter是一款纯java编写负载功能测试和性能测试开源工具软件。相比Loadrunner而言,JMeter小巧轻便且免费,逐渐成为了主流的性能测试工具,是每个测试人员都必须要掌握的工具之一。
本文为JMeter性能测试完整入门篇,从Jmeter下载安装到编写一个完整性能测试脚本、最终执行性能测试并分析性能测试结果。
运行环境为Windows 10系统,JDK版本为1.8,JMeter版本为5.1。
2.Jmeter安装
2.1、需要安装JDK
JDK—java开发工具包
JRE—java运行环境
JVM—java虚拟机
2.2、验证机器是否安装好java环境
java -version—查看版本号
java 验证系统的环境变量path是否设置ok
2.3、设置环境变量—目标:任意路径可以识别jmeter
JMETER_HOME:D:\JMeter\apache-jmeter-5.1.1
PATH:%JMETER_HOME%\bin
2.3、杂项
每一台机器是否能创建多少个用户数—内存(物理内存)16G
Jmeter—一个java进程—进程需要一定内存资源-堆内存
jmeter-server—分布式启动时使用
jmeter.bat—单台机器启动
jmeter永久中文设置—打开bin目录下jmeter.properties文件在37行左右修改为language=zh_CN
3.性能指标简介
3.1性能指标四个字总结:多、快、好、省。
多:对应的就是并发量
快:延时、响应时间
好:稳定性(长时间运行)
省:资源使用率
3.2、性能指标的描述:
3.2.1、响应时间:对请求作出响应所需要的时间,是用户感知软件性能的主要指标(端到端的)
响应时间包括:
1.用户客户端呈现时间
2.请求\响应数据网络传输时间
3.应用服务器处理时间
4.数据库系统处理时间
思考:响应时间多少合理?答:2、5、8秒原则
3.2.2、并发用户数
并发用户数的概念:系统用户数、在线用户数、并发用户数
系统用户数:软件系统注册是用户总数
在线用户数:(1)某段时间内访问的用户数,这些用户只是在线,(2)不一定同时做某一件事情
并发:用于从业务的角度模拟真实用户访问同时访问
并发数:同时访问系统的用户数
在c/s或者b/s结构的应用,系统的性能主要有服务器觉得,服务器在大量用户同时访问时压力最大
并发分为:
严格并发:秒杀
广义并发:不同用户做不同的事情
计算:
平均并发用户数的计算:c=nL/t
c-是平均的并发用户数
n-是平均每天访问用户数
l-是一天内用户从登陆到退出的平均时间
t-是考察时间长度(一天内多长时间有用户使用系统
并发用户数峰值计算:C^约等于C+3*根号C
3.2.3.吞吐量
性能测试:指单位时间内系统处理用户的请求数
从业务角度看:吞吐量可以用:请求数/秒、页面数/秒、人数/天或处理业务数/小时等单位来衡量用户请求数/秒或页面数/秒来衡量
从网络角度看:吞吐量可以用:字节/秒来衡量
对于交互式应用来说,吞吐量指标反映的是服务器承受的压力他能够说明系统的负载能力
TPS:每秒事物数
计算:当没有遇到性能瓶颈的时候吞吐量与虚拟用户数之间存在一定的联系,可以采用以下公式计算:
F=VU*R/T=100*1/5=20
其中F为吞吐量,VU表示虚拟用户个数,R表示每个虚拟用户发出的请求数,T表示每个虚拟用户 发出的请求数,T表示性能测试所用的时间