Я считаю, что с оператором ||
прямого пути нет, но вы можете проверить с типами данных.Поскольку null
является типом object
в javaScript, запишите контрольный пример следующим образом:
var jsonData = JSON.parse(responseBody);
pm.test('All expire_date contains string', () => {
for (i = 0; i < jsonData.length; i++) {
pm.expect(typeof jsonData[i].expire_date).to.be.oneOf(['string', 'object']);
}
});
Это, вероятно, простой способ, и его можно использовать в простых проверках.Однако я бы порекомендовал вам использовать второй способ, т.е. использовать самый быстрый JSON Schema Validator.
var Ajv = require('ajv'),
ajv = new Ajv({logger: console}),
schema = {
"properties": {
"expireDate": {
"type": ["string","null"]
}
}
};
var jsonData = JSON.parse(responseBody);
pm.test('All expire_date contains string', function() {
for (i = 0; i < jsonData.length; i++) {
pm.expect(ajv.validate(schema, {expireDate: jsonData[i].expire_date})).to.be.true;
}
});
Если вы хотите проверить это в нескольких запросах, поместите схему на уровень сбора.