当接口请求成功后,返回的内容,我们需要提取内容,并校验实际结果与预期结果是否一致。 平台可以支持3种方式提取结果
body.data.0.key
接口示例
GET http://127.0.0.0:7005/api/test/demo
{
"code": 0,
"msg": "成功success!",
"data": [{
"age": 20,
"create_time": "2019-09-15",
"id": 1,
"mail": "283340479@qq.com",
"name": "yoyo",
"sex": "M"
}, {
"age": 21,
"create_time": "2019-09-16",
"id": 2,
"mail": "123445@qq.com",
"name": "yoyo111",
"sex": "M"
}]
}
可以直接通过body.code
和 body.msg
取到对应值
运行结果
如果想取出data 下第一个name 的值 ‘yoyo’ 于是表达式可以这样写
body.data.0.name
如果你熟悉jsonpath 取值,那么这里可以直接上手解析json数据
对于复杂的场景,我秒也可以轻松取值,比如: 取出data数据里面的name=”yoyo111” 的mail值‘123445@qq.com’
于是可以用到jsonpath的过滤器取值
$..data[?(@.name=='yoyo111')].mail
如果返回的是 json 格式,用 jsonpath 取值完全够用了,有时候返回的不是json格式,比如返回一个html格式,这时候就需用到正则表达式取值
以访问我的博客为例https://www.cnblogs.com/yoyoketang/
我希望取到title的值, 于是可以直接写正则表达式
运行结果
extract 是提取返回结果,设置变量,方便后面的步骤引用变量,或者校验结果的时候引用