jmeter–基础–02–使用
1、线程组
1.1、在取样器错误后要执行的动作
取样器就相当于是postman发送请求接口,当接口请求失败时,要执行的动作
- 继续:继续执行接下来的操作
- 启动下一进程循环:忽略错误,执行下一个循环
- 停止线程:退出当前线程,不再执行此线程的任务操作
- 停止测试:等待当前执行的采样器结束,接着结束整个测试
- 立即停止测试:直接停止整个测试
1.2、线程属性
1.2.1、线程数
即模拟用户数量
1.2.2、Ramp-Up时间(秒)
达到指定线程数所需要的时间。
比如线程数为100,此处为5秒,那么相当于用时5秒达到100线程数。平均每秒启动20个线程。
1.2.3、循环次数
要循环的次数,如果勾选"永远",会一直循环下去
1.2.4、Same user on each iteration
表示每个迭代都用相同的线程。
默认值:默认是勾选
举例1:比如线程数为1,循环次数为5,那么创建好1个线程后,每次循环迭代都用这个线程,直到测试结束。如果不勾选,那么每次循环会销毁之前的线程,再创建1个新的线程,测试结束总共会经过5次创建销毁线程,浪费了计算机资源,线程多了甚至可能会影响性能测试结果,所以默认是勾选的。
举例2:这1个线程中有登录操作,加入cookie后,这个线程5次迭代下来用的都是这一个cookie
1.2.5、延迟创建线程直到需要
- 勾选:当线程需要执行的时候才会被创建
- 不勾选:在计划开始的时候,所有的线程就都创建好了
1.2.6、调度器:
持续时间(秒):表示多少秒后,结束测试
启动延迟(秒):表示点击开始执行计划后,延迟多少秒,才真正开始执行
2、线程组添加组件介绍
2.1、取样器
发送接口请求,类似于代码中requests封装的请求接口方法。
2.2、逻辑控制器
控制语句的执行顺序。
2.3、前置处理器
在取样器发送接口请求之前,需要执行的操作,比如删除数据,恢复数据,生成数据等。
2.4、后置处理器
在取样器发送接口请求之后,需要执行的操作,比如恢复数据,或处理响应数据,提取需要的值等。
2.5、断言
判断是否返回了预期的结果。
2.6、定时器
一般用来延时发送接口请求,类似于代码中的强制等待sleep。
2.7、测试片段
相当于封装一段代码,供其他脚本使用。
2.8、配置元件
用于初始化变量,以便采样器使用。类似于自动化框架中的配置文件。
2.9、监听器
展示执行结果,打印日志信息等。
3、线程组组件的执行顺序与接口自动化对比
4、聚合报告
- leabel:接口的名称
- 样本:请求数量
- 平均值:请求的平均响应时间,单位是毫秒
- 中位数:按大小顺序排列起来,形成一个数列,处于数列中间位置的值
- 90%百分位:90%的请求其响应时间不超过这个值
- 95%百分位:95%的请求其响应时间不超过这个值
- 99%百分位: 99%的请求其响应时间不超过这个值
- 最小值:请求的最小响应时间
- 最大值:请求的最大响应时间
- 异常%:接口异常百分比
- 吞吐量:每秒取样器执行的数量,相当于 TPS
- 接收KB/sec:每秒接收的KB
- 发送KB/sec:每秒发送的KB