在做接口测试的时候,会对接口进行断言,一个完整的接口测试,包括:请求->获取响应正文->断言。
一、apipost 如何进行断言
apipost 的断言设置实在后执行脚本中进行编写的。apipost 本身提供了 11 中断言:
apt.assert('response.raw.responseText=="test"');测试响应内容是否为 test
apt.assert('response.raw.status==200');测试响应码是否为 200
apt.assert('response.raw.type=="json"');测试响应内容格式是否为 json
apt.assert('response.raw.responseTime>=100');测试响应时间是否大于 100ms
apt.assert('response.json.errcode==1');测试响应 Json 对象的 errcode 属性是否为 1
apt.assert('response.json.errcode!=1');测试响应 Json 对象的 errcode 属性是否不为 1
apt.assert('response.json.errcode>=1');测试响应 Json 对象的 errcode 属性是否为大于等于 1
apt.assert('response.json.errcode==null');测试响应 Json 对象的 errcode 属性是否为 null
apt.assert('response.json.errcode!=null');测试响应 Json 对象的 errcode 属性是否不为 null
apt.assert('response.headers["server"] == "nginx"');测试响应头 server 是否为 nginx
apt.assert('response.headers["content-encoding"] == "gzip"');测试响应头 content-encoding 是否为 gzip
二、如何查看断言
接口中查看断言:
流程测试中查看断言:
其中的成功和失败是代表的流程测试执行成功了几条执行失败了几条。
三、自定义断言
apipost 脚本支持 js 语句,我们可以自定义断言,比如:自定义响应值中 json 返回的 code 值是否等于 200
apt.assert('response.json.code==200');