首页 > 解决方案 > 测试 Postman 响应体 Json 是数组还是对象

问题描述

我有一个正在测试的 API,我希望responseBody它是一个 Json 对象(以“{”开头)。但是,由于意外事件,可能会以数组形式返回响应(以“[”开头)。

如何确定responseBody使用 Postman 测试的类型(数组或对象)?

到目前为止,我拥有的最好的是:当期望一个对象(不是数组)时

var bodyJson = pm.response.json();
tests["Response should not be an array"] = !(bodyJson instanceof Array);

标签: javascriptpostman

解决方案


你可以只使用:

pm.test('is an Array', () => pm.expect(pm.response.json()).to.be.an('array').but.not.an('object'))

取自ChaiJS - 它内置于本机Postman应用程序中。


推荐阅读