如何在邮差测试中检查请求体是否有键?



我正在尝试编写邮差测试。我想根据请求检查响应所以我想知道requestBody有什么。Requestbody是一个json格式,比如

{"subscription":{"supi":"value","gpsi":"value","pei":"value"}}. 

这3个元素(supi,gpsi,pei)是可选的,所以我想检查requestBody中存在哪一个。我可以访问supi的值,如果它存在,下面的代码。

requestBody = JSON.parse(pm.request.body); var subscription= requestBody.subscription; var supi=subscription.supi;

我试着用if(subscription.supi !== null)来控制supi是否存在。据我所知,当supi不在requestBody中时,订阅。Supi不返回null,所以我的if检查不能正常工作。我如何在requestBody中控制supi是否存在?

在javascript中,如果对象属性不存在,它将返回undefined

使用

if(subscription.supi !== undefined).

或者也可以用

Object.keys(subscription).includes(supi)

这将提取所有键并检查它是否包含键supi

也可以使用

subscription.hasOwnProperty('supi')

这将检查订阅是否具有supi属性,这是最好的方法

最新更新