软件测试 / 测试开发 | 接口自动化测试如何搞定 json 响应断言?
在之前的的章节已经简单介绍了如何断言接口的响应值,在实际工作过程中,json 的响应内容往往十分复杂,面对复杂的 json 响应体,主要通过 JSONPath 解决。JSONPath 提供了强大的 JSON 解析功能,使用它自带的类似 XPath 的语法,可以更便捷灵活的用来获取对应的 JSON 内容。
环境准备
Python 版本安装
复制代码
Java 版本安装
复制代码
XPath 和 JSONPath 语法
下表是 XPath 和 JSONPath 语法进行对比,这两者的定位方式,有着非常多的相似之处:
比如同样一个字段,XPath 中的语法是:
复制代码
JSONPath 的语法是:
复制代码
下面是一组 json 结构,分别通过 JSONPath 和 XPath 的方式提取出来
复制代码
下表列出了 XPath 与 JSONPath 的对比:
实战练习
以下是 https://ceshiren.com/t/topic/6950.json
这个接口的正常响应值(因响应篇幅过长,删除了部分内容):
复制代码
Python 演示代码
JSONPath 断言
复制代码
Java 演示代码
JSONPath 断言
复制代码
版权声明: 本文为 InfoQ 作者【测试人】的原创文章。
原文链接:【http://xie.infoq.cn/article/72ee787dcab812cfdbb78f6bc】。文章转载请联系作者。
评论