1、JSON响应断言
该组件使您可以执行JSON文档的验证。
首先,它将解析JSON,如果数据不是JSON则失败。
其次,它将使用https://github.com/json-path/JsonPath中的语法搜索指定的路径。如果找不到该路径,它将失败。
第三,如果在文档中找到JSON路径,并要求针对期望值进行验证,它将执行验证。对于null值,在GUI中有一个特殊的复选框。请注意,如果路径将返回数组对象,则将对其进行迭代,并且如果找到期望值,则断言将成功。要验证空数组,请使用[]字符串。另外,如果patch将返回字典对象,则在比较之前将其转换为字符串。
什么是JSON
JSON(JavaScript Object Notation,JavaScript对象表示法)是一种轻量级的数据交换格式。JSON容易理解,便于阅读和编写;同时计算机也易于解析和生成,所以JSON有广泛的应用。
键值对的形式存在:
JSON断言分析:
- 返回的数据必须的JSON格式,否则会解析失败。
- 他将JsonPath语法搜索指定的路径,找不到路径,则会失败。http://goessner.net/articles/JsonPath/ 这个网址去学习JSON语法。
- JSON是键值对形式存在,通过路径找到键,可以对该键的值进行校验。
- 如果键的值为null,GUI中有复选框(Expect null),勾选上则表示以null作为预期值。
- 如果路径找到的数组对象(在列表页中比较常见这种情况),则会对数组中的数据进行轮询。如果其中有一个值和预期值匹配,那么断言也是成功的。
- 返回的是字典对象,则需要转为字符串后再进行比较。
添加 》 断言 》 JSON断言
JSON断言界面参数说明:
- 名称:节点的名称,显示在查看结果树中,自己根据实际情况定义。
- 注释:对该节点进行注释。
- 断言存在JSON路径:断言JSON元素的路径。
- 附加断言值:如果要使断言具有某个值,把这个值勾选上。如果写了(3)JSON元素的路径,要把这个值勾选上。
- 匹配为正则表达式:如果要使用正则表示式,选中该复选框。
- 预期值:JSON元素路径对应的值。
- 反转断言:就是否的意思,即如果符合就失败。
可以直接在查看结果树中进行JSON语法的测试。测试ok了再直接放在JSON断言中。
$ 表示跟节点。
[] 表示数组,0表示第一个;$[0] 表示跟节点后的第一个对象。
resultcode 即key,这里要获取resultcode的值,所以填写resultcode。
当接口的返回数据比较多的时候,可以去https://www.json.cn/进行解析:
举例:
取第一个id的值,$.data[0].id