想让上一个接口的出参作为下一个接口的入参:
使用Jmeter的json提取器或者的出参作为下一个接口的入参:
使用Jmeter的json提取器或者正则表达式可以解决这个问题
json提取器:
JSON Path expressions:
返回内容如下:
{ "status":200, "data":[{"id":101,"name":"张无忌"},{"id":102,"name":"周芷若"}] }
想要取到“周止若这个名字,表达式为:”$.data[1].name
1)这里解释一下【JSON Path expression】的写法,首先"$.“这部分是固定写法,“data"表示在JSON串以"data"为key获取value,也就是”[{“id”:101,“name”:“张无忌”},{“id”:102,“name”:“周芷若”}]”。
而这段字符串是JSONArray(JSON数组)格式,里面有两个JSONObject(JSON对象),第二个JSONObject是我们需要的,因此再按索引值"1"去获取,也就是"data"后面写"[1]",写到这里,我们得到了"{“id”:102,“name”:“周芷若”}"这个JSONObject,接下来再根据"name"这个key去获取相应的值,就得到"周芷若"了。
2)如果想取到响应的所有报文,直接写一个$就可以了
3)如果想看一下变量message的值需要一个Debug Sampler
4)使用提取出来的变量:${message}
5)当一次想提取多个变更的时候:多个变更之间用;(分号)分隔
Jmeter响应内容显示乱码问题的解决办法
进入Jmeter的bin目录下,找到jmeter.properties文件,以文本形式打开
找到sampleresult.default.encoding这个参数,此行默认是注释的。
可以看到说明,默认值是ISO-8859-1
将ISO-8859-1修改成utf-8,去掉注释符号,重启Jmeter