【性能测试】Jmeter具体操作-小白使用手册(2)

打印 上一主题 下一主题

主题 979|帖子 979|积分 2937

 

  
本篇文章重要介绍Jmeter中如何使用

  
JSON断言、同步定时器、事务控制器、CSV数据文件设置、HTTP Cookie管理器

  目次

一:JSON断言
1:精确效果展示
2:错误效果展示
3:JSON设置
(1)Additionally   assert   value添加断言值
(2)Match   as  regular  expression正则匹配
4:正则表达式
(1)\d匹配数字 
(2)\s匹配字符
(3)最小匹配多少次
5:使用展示
二:同步定时器
1:场景引入
2:实现并发效果
3:前后对比
4:如果模仿用户组数量大于线程组数量
三:事务控制器
1:创建事务控制器
2:聚合陈诉的信息讲解
四:CSV数据文件设置
1:场景引入
2:创建我们要的信息
(1)创建一个表格
(2)生存文件
3:参数介绍
4:效果展示
五:HTTP  Cookie管理器
1:浏览器哀求访问场景引入
2:Jmeter中不设置Cookie管理器演示
3:设置HTTP Cookie管理器


一:JSON断言

1:精确效果展示


2:错误效果展示

使用错误的名称
登录返回的数据中没有code1这个数据,所以没有找到这个result,换成data



3:JSON设置

(1)Additionally   assert   value添加断言值

①若不选Additionally   assert   value,表⽰添加断⾔值,则可⽤来判定字段是否存在
②选择Additionally  assert  value,则必须添加Expected  Value盼望的断⾔值(这里区分巨细写)

 


(2)Match   as  regular  expression正则匹配

③若不选Match   as  regular  expression正则匹配,则Expected  Value必须填写完整,少⼀个字符都会导致断⾔失败
④若选择Match   as   regular   expression正则匹配,则Expected    Value可以仅写上部分关键词即可断⾔成功


去匹配我们的token字符串

4:正则表达式

(1)\d匹配数字 


(2)\s匹配字符

\s匹配全部空缺符,包括换行;\S非空缺符,不包括换行;



(3)最小匹配多少次



5:使用展示

 

二:同步定时器

1:场景引入


设置了五个线程,我们想要让这个五个线程告竣同步并发的效果,但是看我们当前的执行情况,这些线程是在1s内陆陆续续的完成,没有告竣我们预想中并发执行的效果。(这里就是谁先准备好,谁就先发起哀求)

2:实现并发效果

想象一个场景:我们行人在过马路前需要等待红灯跳转到绿灯,行人在这个等待的过程中越聚越多,绿灯一亮,行人则蜂拥而过。
 同步定时器可以理解为集合点,当线程数量到达指定值后,再⼀起释放,可以瞬间产⽣很⼤的
压⼒。这样,可以更好地模仿真实的⽤⼾并发访问场景,提⾼测试的准确性和可靠性。


设置的数量与我们前面设置好的线程组的数量保持划一

3:前后对比

全部线程都准备好了,一起发送哀求,到达并发的效果

4:如果模仿用户组数量大于线程组数量


这里就会卡主,由于没有它会不绝等待到50个线程准备完毕,才发送哀求。所以这里设置的数量不可以大,那可以小吗?

答案也是不可以的,假设我们当前设置的模仿用户组数量为3,那么我们就是分3个一组哀求一次,但是我们设置的是5个线程呀,尚有2个线程凑不出来3,所以就迟迟不能发送哀求。也会卡主

那又有一个题目了: 若小于设置的线程数,线程组中的线程数与当前设置的数据必须成整数倍。这个结论是否精确呢?

也是不可以的,假设我们的线程组数量为(6),我们第一轮准备好的线程数(5)>=设置的数量3,就直接发送哀求了(3),此时尚有一个就落单了,落单的那个线程就会不绝等
所以当设置的数量小于线程数时,最好把循环打开,避免最后一次为准备好的线程数量达不到并发数

三:事务控制器

我们如今有5个接口

打开聚合陈诉,就会显示五个接口的相干测试信息

1:创建事务控制器

思考:我们如今如果想要把登录接口和列表接口归并成一个事物,应该怎么做呢?

执行归并操作

再打开聚合陈诉,就会发现,多了一行我们的登录事务

2:聚合陈诉的信息讲解


登录和用户信息接口均匀相应时间分别为34ms和22ms,相加登录事务为56ms
列表页返回的data数据比较多,所以相应的时间比较高是正常的
一般看90%的哀求对应的相应时间
(1)异常就是错误率
   (2)吞吐量——有两种划分方式
  ①哀求的数量划分
  TPS——每秒处置惩罚的事务数量(常用)发送很多哀求,每秒处置惩罚的事务数越高,tps越高,性能越高
  QPS——每秒的查询率
  ②网络数据包划分
  

四:CSV数据文件设置

1:场景引入

以登陆接⼝为例,当我们执⾏登陆接⼝的性能测试时,⼿动设置了⽤⼾名和密码为固定的username和password,然⽽实际使⽤中不大概只有⼀个⽤⼾登陆,为了模仿更真实的登录环境,我们需要提供更多的⽤⼾username和password来实现登录操作
我们如今不把用户名和密码写死,

2:创建我们要的信息

(1)创建一个表格

word文档
(注:如果我们数据库当中的用户数量不多的话,可以自己添加一些数据进去,这里在查察数据库是可以格式化查察,比如select * from user\G)无分号,格式化查察


(2)生存文件


3:参数介绍

⽂件名:填写csv⽂件的路径。建议使⽤绝对路径。
• ⽂件编码:UTF-8
• 变量名称:从csv数据⽂件中读起的数据需要生存到的变量名。有多个变量时⽤逗号分隔
• 是否忽略⾸⾏:是否从csv数据⽂件第⼀⾏开始读取。
• 分隔符:要求与csv数据⽂件中多列的分隔符⼀致
• 碰到⽂件竣事符再次循环:若选择为True当数据不够的时候会从头取。若选择False,则需要勾选
下⾯的设置,碰到⽂件竣事符停⽌线程,这⾥如果不勾选,哀求将会报错。

4:效果展示

设置多个线程数,我们才能看到多个差别的用户,发起哀求

五:HTTP  Cookie管理器

1:浏览器哀求访问场景引入

我们访问第一个login登录接口,会设置这个Cookie信息,


进行302临时重定向之后,第二次访问最下方的login,也会带上一次的Cookie信息

2:Jmeter中不设置Cookie管理器演示

这里没有加入Cookie管理器所以第二次登陆哀求头当中就没有携带上我们当前线程的Cookie信息,所以浏览器就找不到对应的Session会话

3:设置HTTP Cookie管理器


效果展示


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

半亩花草

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表