守护麦田  
  • 调试取样器: 配合察看结果树使用,线程组-右击 添加-取样器 -Debug Sampler ,就是调试取样器; 可以将接口调用的结果显示出来;直接运行,可以在察看结果树里看到所有运行过程中的 变量
  • json提取器

场景使用: 多个接口,第二个接口的 某个请求入参 需要 使用到第一个接口的响应数据中的某字段; 

一般接口响应都是json数据,所以针对响应的json数据,提取其中 的某字段,一般使用json提取器。

比如:接口a 搜索库存,获取库存; 接口b 去购买- 最新的库存;      
思路: 就是将第一个接口的响应值提取出来 库存,保存; 第二个接口 去使用。

给第一个接口加 后置处理器-json提取器;

 保存的变量名;

json的路径

如果有多个,匹配第几个; 只有1个,输入1;   0代表随机,n代表具体数据,-1代表所有

最后一个:是否需要放默认值;
第二个接口中使用此数据,${mystock}

URL 编码: 一般请求中 有这种% 的,可以用网上URL编码工具就可以 进行编码成正常的数据;

jsonpath 需要自己学一下;

正则表达式

. 任意一个字符

+ 重复多次
? 限制最多匹配一次;

aabbbbbbbccbbbbcc: aa.......c,   . 代表b

.+ 代表:默认匹配最长的符合条件的数据;  + 重复多次,威力太大了
.+?代表:可以匹配符合条件的任意字符,且是最短的数据;
一般就可以正常使用了。

引用名称:将要匹配到 内容保存到哪个变量中;
正则表达式:将要替换的内容左右用()括起来,然后将要替换的内容用.+? 来替换;

模版:$1$ 表示匹配到的第一组数据; 代表第一个小括号;

使用场景:一般接口响应的数据是不是json格式,都可以用正则表达式,主要是灵活;
     如果需要提取的数据在响应头中, 正则可以进行提取; json提取器就无法使用;

比如说响应头中的数据提取:要检查的响应字段--选信息头

 

想提取的数据,右边界是空,怎么处理呢;

 

正则表达式提取的时候,右侧 输入 \n,    运行后,调试取样器中 显示:enc=chunk,有值,就证明提取到了。

如果要提取的数据,右侧是顶格呢,  会有两种情况:一种是 什么都没有 (什么都不必加),一种是有回车,换行(加\n);  
下面这个 后面有第5行,说明是换行; 右侧 输入 \n

 再一种情况是,右侧什么都没有的时候,那正则提取器: 右侧就什么都不用写;

复杂情况:响应的数据是一个列表呢,里面返回的数据很多;
数组:里面有很多组数据; 想提取 手机号,有十组数据,会有十个手机号;用正则表达式,里面的匹配数字就很关键了;
匹配数字:1。 会保存第一个手机号;
匹配数字:2  保存第二个符合条件的手机号;  1-10 , 代表具体的第几个手机号
特殊数字------匹配数字:0 代表的随机匹配一个; 匹配数字:-1 代表 将所有数字都匹配下来; phonenum_1,phonenum_2,phonenum_3,一共会有10个

如果有使用的话,${phonenum_1}  这么使用;  其实 用全部的这种场景比较少;

随机 的/ 跟固定的,场景 使用的更多一些; 大多数的时候,写1 比较多一些;


 

posted on 2023-12-23 10:56  守护麦田  阅读(36)  评论(0编辑  收藏  举报