复习一下jmeter的常见的用法

news/2024/6/17 5:16:56

(一)json 断言
在这里插入图片描述
$.表示的是响应体, 后面就是响应体的key
Expected Value 预期值也可以参数化, 特别是多线程的时候,可以参数化使用csv文件里的数据进行校验
在jmeter中, 引用变量是 ${var}, 在postman中是 {{ }} , 常常容易搞混了
(二)json提取器
在这里插入图片描述
其中 Math No. (0 for Random) 的意思是,如果要提取的路径有相同的, 怎么办?
0 是随机取一个, 1是提取第一个, 一般情况下要提取的 json 路径最好是唯一的,因此写1
(三)读取csv 文件

在这里插入图片描述
在这里插入图片描述
可以根据自己的需要选择, 没有其他线程组的情况下, 又不希望是所有线程一起共享读取的进度,可以保持默认或者手动选择当前线程组
csv文件如果是单线程,循环多次, 也会共享csv文件的读取位置,继续往下读,因为单线程也是归属于线程组里管理的,只要它所属的线程组有权限读取就行
jmeter里可以设置多个csv文件读取器,不用强行把所有数据都存到一个csv文件中

(四) 随机数和时间戳(毫秒级)的使用
在这里插入图片描述
在函数助手中选择 time 和 Random 就可以了,
可以把这两个一起使用,就可以使得生成的某个订单数据不重复
但是不可以 两个随机函数紧挨着使用
在这里插入图片描述

这样会直接报错的
(五)jmeter设置通讯协议, 写http或者https 都行, 但是写了http或者https之后, 就别写端口号了, 就会自动走http或者https的默认端口号, 而且 jmeter有内置处理, 即使设置上是http , 但服务器实际上是走https 协议, 或者反过来, jmeter也会帮我自动处理, 除非是那种不是走默认端口的, 就需要手动写
(六)json提取器提取多个变量

在这里插入图片描述
存储的变量名之间用分号隔开, 提取的路径也是用分号隔开,要和变量的个数保持一致, 并且只可以用分号,不能分号之后 再弄个空格键隔开
0 for Random 中要写1 ,也是用分号隔开,有几个变量就写几个1,或者都不写也行, 这是表示如果按照路径去找,返回的结果有多个的时候选择哪个? 0代表是随机选择

(七) jmeter 如果要传递 json格式的数据, 请求头里一定要有

“Content-Type”:“application/json”
否则就是发送的请求就会失败, 它并不像postman, 如果你的格式是Json , 少写了这个请求头也无所谓,会自动给你补全
(八) jmeter请求头 的设置,容易犯错的地方

在这里插入图片描述

就是不需要使用"" 包裹字符串, 内置已经处理了, 如果我们自行加上"" 反而就会报错
(九) 用 navicat 导出的 csv 数据, 自带双引号(用excel 看不到双引号, 用nopad++ 打开就看到双引号, 应该是由于导出的字段是字符串所引起的 )
在这里插入图片描述
把这个查询结果导出到csv 文件后 , 用 jmeter 直接读取的时候, 就会把双引号也读取进去, 从而导致请求失败, 因为在 jmeter 中, 请求头的参数无论是不是字符串, 都不需要自行加双引号,
在这里插入图片描述
那么要如何解决呢?
在这里插入图片描述
把这个是否允许带引号,设置成 True , 就会把读取的csv 数据中的双引号给过滤掉,
在这里插入图片描述
在这里插入图片描述
这个时候可以看到请求头里的数据没有双引号了

其实在 jmeter中, 除了请求体的json 格式, 其他的都不需要自行补上双引号.
(十)读取csv 文件的时候, 如果设置了忽略首行变量名,
但是你的csv 文件中, 实际上并没有首行写上变量名, 那么就会导致把首行数据给忽略掉了, 虽然 jmeter中说是只有在设置了变量名称才生效,实际上并没有做这个的检测 ,我就是因为这个, 发现执行少了一行数据
在这里插入图片描述
(十一) jmeter的隐匿错误,从采样器上是看不出有啥问题的,但是又很容易发生的小错误
在这里插入图片描述
这个, 就是请求头在复制的时候, 后面多了个空格导致的
在这里插入图片描述
去到请求头中, 把空格删掉即可
在复制的时候, 要小心空格键


http://www.niftyadmin.cn/n/1333456.html

相关文章

王道书链表题目--有一个带头节点的单链表L,使其元素递增有序

答案的方法是使用头插法,我第一遍看的时候有点绕。补充的答案是将链表复制到一个数组中,再用时间复杂度为O(nlogn)的排序算法进行排序,这个很容易理解。 在此,我想记录一下自己写这个题目的方法。 思路 我…

mac 反编译工具 java_NSA开源逆向分析工具Ghidra入门使用

背景介绍3月6日,RSA大会上,NSA发布了一款功能强大、免费的开源逆向分析工具:Ghidra。该反汇编工具类似于IDA,基于JAVA开发,是一款适用于Windows、Mac和Linux的跨平台反汇编工具,用户还可以使用Java或Python…

jmeter连接mysql数据库的注意事项

首先要清楚要连接的mysql数据库是什么版本的数据库, 然后要检测自己的jmeter有没有对应版本的连接jar 包. 比如当前,我要连接的数据库是mysql 8.1的, 然而我的jmeter连接数据库的jar 包的等级是5.1的, 那么肯定是连接不上的 如果不匹配, 那么就要去下载符合条件的 jar 包, 下面…

ISO/OSI参考模型的简要介绍以及概括

1. 大致介绍 包括七层,如下图: ps:路由器、交换机等设备只会经过下面三层,而两个主机通信会经过7层 为了便于理解,把上图的流程进行简单的类比:可以看做我想给一个朋友写一封信,并从邮局邮过…

python中try...except的用法_python中try..except语句如何使用?

老是听说try..except语句,那大家知道怎么去使用吗?据目前所了解,基本上都是在异常处理中使用这个语句的,而使用这个语句的方式也有很多,比如最基本的是直接去使用,还有的是能够把异常显示出来,下…

简单回顾一下 mysql 的常见用法

内连接(右连接或者左连接) 的用法 select * from table1 as tb1 inner join table2 as tb2 on tb1.field tb2.field where xxx order by field_appoint (desc) limit number ; 内连接(左右连接)的 用法之上加上分组和过滤 在此之前首先要分清分组和过滤的用法, 过滤是跟着分…

pycharm与python的关系_浅析python,PyCharm,Anaconda三者之间的关系

{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],"search_count":[{"count_phone":4,"count":4}]},"card":[{"des":"阿里技术人对外发布原创技术内容的最大平台&…

总结:删除单链表/单循环链表中的最小值节点的两种解法(并延伸至:依次找出链表的最小值,打印并删除,释放空间)

前言 最近在写数据结构的王道考研书,复习到了链表,写了一些练习题,发现了关于找出链表中的最小值节点有两种方法,而至于是单链表还是循环单链表,只不过是更改了循环的条件。 类似的,也可以得出“依次找出…