javascript - 测试 Postman 响应体 Json 是数组还是对象
问题描述
我有一个正在测试的 API,我希望responseBody
它是一个 Json 对象(以“{”开头)。但是,由于意外事件,可能会以数组形式返回响应(以“[”开头)。
如何确定responseBody
使用 Postman 测试的类型(数组或对象)?
到目前为止,我拥有的最好的是:当期望一个对象(不是数组)时
var bodyJson = pm.response.json();
tests["Response should not be an array"] = !(bodyJson instanceof Array);
解决方案
你可以只使用:
pm.test('is an Array', () => pm.expect(pm.response.json()).to.be.an('array').but.not.an('object'))
取自ChaiJS - 它内置于本机Postman应用程序中。
推荐阅读
- spring - MapStruct 在源和目标中都找不到属性
- javascript - 无法使用 nodejs 导出访问变量值?
- vba - 通过 VBA 在 PowerPoint 中更改语言仅在 macOS 中返回编译错误
- javascript - 如何附加一些带有循环的单选按钮并将其包裹在表单元素周围?
- ios - (已解决)Nativescript-plugin-firebase(“Swift 语言版本”(SWIFT_VERSION))
- python - 编写支持 TensorFlow CPU/GPU 的 Conda 环境文件的标准实践
- c++ - 试图理解通过引用传递 C++
- android - Libgdx Robovm:java.io.IOException:文件不是存档文件
- php - 如何使 PHP 注册错误出现在其专用输入框下方
- python - 如何使用 python 回调选择散景圆形字形?