后置处理器
一、json提取器
1、局限:只能提取响应体中的数据;当我们的响应结果为json时,想要从json中获取某个值,请优先选择用 json提取器
2、json提取式
2.1 默认写法:$.节点名称1.节点名称2, 从根节点开始 多级节点之间用点号
3、提取多个值的方法:json提取器中填写match no.为一个负数
4.1 json提取式,可以写多个,多个之间用分号分割
4.3 此时,一定要填写对应数量的 默认值(default Values),默认值之间也用分号分割
4.4 如果match no.为0,则每一个参数都会随机取数,有可能会导致数据对不上,如果想要每一组数据都对应则指定取哪一组,可以填写1;1
5、接口关联:前面接口的动态响应值,作为后续接口的传入参数,则两个接口关联;在写性能脚本的时候,非必传参数,如果不是互斥的,请求尽可能的都写。
二、正则提取器
1、范围:可以提取响应体、响应头、响应行,也可以提取请求内容
2、正则表达式:左边界(正则表达式)右边界
2.1 json与python中字典很相似,json中 key-value对是无序的,这个key-value键值对的顺序可能会变,如果一旦变了,我们可能取的值,就不是我们想要的了。
2.2 正则表达式:
2.2.1 万能正则式:.*?
2.2.2 . 代表匹配除换行符之外的任意一个字符
2.2.3 * 匹配0次或多次——贪婪模式
2.2.4 ? 匹配0次或1次
2.2.5 + 匹配1次或多次
2.2.6 [0-9] 匹配的是数字 \d ;\D匹配非数字
2.2.7 [a-zA-Z] 匹配所有的大小写字母
2.2.8 \w 匹配字母或数字;\W匹配非字母或数字
2.2.9 注意:表达式中的小括号是告诉jmeter,括号里面是正则式,所以, 这个小扩号有特殊用途,不是正则式的符号
[] 是表达式的一个符号,代表括号里面是一个区间; {} (\d{4})匹配4个数字 \d{4,8})匹配4个以上8个以下 数字
2.3 jmeter的正则规则,与perl语言是一致的, 与我们java、python相 似,所以这个正则,也可以通用到文本的匹配中
3、注意事项
3.1 提取json值: key:value 这个冒号后面没有空格,不能存在空格,会匹配不到
3.2 模板: $数字$ 数字对应表达式的第几个小括号
3.3 如果想要在一个正则提取器中写多个正则提取式: 中间的分割符 【(.*?)】,然后,模板,使用$你要的第几个正则式的序号$$你要的 第几个正则式的序号$
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。