性能测试全栈笔记:15.Jmeter参数化CSV进阶-UEC篇

作者: admin 分类: 性能专题 发布时间: 2021-12-23 11:41

性能测试全栈笔记

十五、Jmeter参数化CSV进阶-UEC篇

引导:

  • 前面学习了Jmeter参数化CSV基础篇,对CSV的设置有了一定的了解,今天和大家一起学习一下CSV参数化的进阶内容,分UEC和UEA两个部分,能掌握多少是多少。
  • UEC:用登录案例来做(本章节)
  • UEA:用注册案例来做(下一章节)

举例说明:

  • 协议:HTTP
  • IP:192.168.25.152
  • 端口:808
接口名称接口类型URL参数
参数为k=v的POST接口POST/pinter/com/loginuserName=admin&password=1234

运行一下单接口:

察看结果数:

再看一下聚合报告(平均值/90%:7ms):

需求:压测脚本1分钟,看聚合报告的指标情况

思考:压测1分钟,那要准备多少CSV数据?

UEC:登录 1个并发1个请求耗时7ms,1分钟=60秒=60000毫秒,60000/7=8571个请求(并发),10个并发60秒?8571*10=85710(条请求)

  • 为什么大概除一下就可以?
  • 答:因为随时压测时间推进,系统的损耗也在增加,值可取!

也就是说,我们至少要准备8571条参数化数据

考虑下一个重点:

CSV如何设置?

思路:因为是登录,循环数据用完,是可以再次使用的,这一点区别与注册,注册具备唯一性

下面开始设置:

1)首先是CSV文件制作,准备好至少85710条数据

2)CSV组件设置

基本的不过多介绍

遇到文件结束符再次循环?:选择True(因为是登录,数据可以重复使用)

遇到文件结束符停止线程?:选择False(同上)

3)设置线程组

  • 线程组:10
  • 间隔时间:1秒
  • 调度器:勾选
  • 持续时间:60秒
  • 意思:10个虚拟用户持续运行60秒,每次迭代间隔1秒(文件编码不写,默认为:UTF-8)

4)点击运行,察看聚合报告:

注意点:每次运行前,有必要情况下先运行清理,再点击保存按钮:

聚合报告结果:

  • 取样结果:94793条请求,90%响应耗时:7ms
  • 之前我们预估至少需要:85710,90%响应耗时:7ms

有误差很正常,实际运行中,环境,带宽等都会受到影响,主要是计算思路很重要。

下一章介绍:Jmeter参数化CSV进阶-UEA篇

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!

发表回复