Size: a a a

Postman | Community

2020 June 22

M

Malik 🍕 in Postman | Community
Проблема в том, что тест дырявый) Он всегда удачно проходит. Хоть я тип меняю integer на string и все равно проходит тест
источник

NV

Nick Verbitsky in Postman | Community
Malik 🍕
По проверке схем можете подсказать как это правильно делается?

{
   "approved": 78,
   "placed": 100,
   "delivered": 64
}


У меня вот такой вот ответ приходит.

Схема следующая:
{
< * >:  integer($int32)
}


Код теста:
const inventoriesSchema = {
   "properties": {
     "type": "integer",
     "minLength": 1,
     "maxLength": 32
   }
};

// Test whether the response matches the schema
var inventories = JSON.parse(responseBody);
tests["Inventories are valid"] = tv4.validate(inventories, inventoriesSchema);
Схема целиком:
{
   "type": "object",
   "required": [
       "approved",
       "placed",
       "delivered"
   ],
   "additionalProperties": false,
   "properties": {
       "approved": {
           "type": "integer",
           "examples": [
               78
           ]
       },
       "placed": {
           "type": "integer",
           "examples": [
               100
           ]
       },
       "delivered": {
           "type": "integer",
           "examples": [
               64
           ]
       }
   }
}
источник

M

Malik 🍕 in Postman | Community
Nick Verbitsky
Схема целиком:
{
   "type": "object",
   "required": [
       "approved",
       "placed",
       "delivered"
   ],
   "additionalProperties": false,
   "properties": {
       "approved": {
           "type": "integer",
           "examples": [
               78
           ]
       },
       "placed": {
           "type": "integer",
           "examples": [
               100
           ]
       },
       "delivered": {
           "type": "integer",
           "examples": [
               64
           ]
       }
   }
}
как вы ее получили такой? Сомневаюсь, что вы ручками это расписали)
источник

NV

Nick Verbitsky in Postman | Community
Malik 🍕
как вы ее получили такой? Сомневаюсь, что вы ручками это расписали)
источник

M

Malik 🍕 in Postman | Community
Спасибо)
источник

NV

Nick Verbitsky in Postman | Community
Malik 🍕
По проверке схем можете подсказать как это правильно делается?

{
   "approved": 78,
   "placed": 100,
   "delivered": 64
}


У меня вот такой вот ответ приходит.

Схема следующая:
{
< * >:  integer($int32)
}


Код теста:
const inventoriesSchema = {
   "properties": {
     "type": "integer",
     "minLength": 1,
     "maxLength": 32
   }
};

// Test whether the response matches the schema
var inventories = JSON.parse(responseBody);
tests["Inventories are valid"] = tv4.validate(inventories, inventoriesSchema);
Тест целиком:
const Ajv = require('ajv');

const responseBody = pm.response.json();
const ajv = new Ajv({logger: console});
const schema = {
   "type": "object",
   "required": [
       "approved",
       "placed",
       "delivered"
   ],
   "additionalProperties": false,
   "properties": {
       "approved": {
           "type": "integer",
       },
       "placed": {
           "type": "integer",
       },
       "delivered": {
           "type": "integer",
       }
   }
};

pm.test('Schema is valid', () => pm.expect(ajv.validate(schema, responseBody)).to.be.true);
источник

M

Malik 🍕 in Postman | Community
Nick Verbitsky
Тест целиком:
const Ajv = require('ajv');

const responseBody = pm.response.json();
const ajv = new Ajv({logger: console});
const schema = {
   "type": "object",
   "required": [
       "approved",
       "placed",
       "delivered"
   ],
   "additionalProperties": false,
   "properties": {
       "approved": {
           "type": "integer",
       },
       "placed": {
           "type": "integer",
       },
       "delivered": {
           "type": "integer",
       }
   }
};

pm.test('Schema is valid', () => pm.expect(ajv.validate(schema, responseBody)).to.be.true);
Спасибо, мне это очень поможет
источник

NV

Nick Verbitsky in Postman | Community
Malik 🍕
Спасибо, мне это очень поможет
Обрати внимание, что tests[''] синтаксис уже deprecated, вместо tv4 рекомендуют использовать ajv, и придерживаться ES6+ синтаксиса.
источник

M

Malik 🍕 in Postman | Community
Nick Verbitsky
Обрати внимание, что tests[''] синтаксис уже deprecated, вместо tv4 рекомендуют использовать ajv, и придерживаться ES6+ синтаксиса.
А что используется вместо tests['']?
источник

NV

Nick Verbitsky in Postman | Community
pm.test()
источник

M

Malik 🍕 in Postman | Community
Nick Verbitsky
Обрати внимание, что tests[''] синтаксис уже deprecated, вместо tv4 рекомендуют использовать ajv, и придерживаться ES6+ синтаксиса.
Понял. А где вообще лучше всего читать обо всех подобных моментах?
источник

NV

Nick Verbitsky in Postman | Community
Malik 🍕
Понял. А где вообще лучше всего читать обо всех подобных моментах?
В закрепе есть ссылки.
источник

M

Malik 🍕 in Postman | Community
Nick Verbitsky
В закрепе есть ссылки.
Спасибо ещё раз большое
источник
2020 June 23

NV

Nick Verbitsky in Postman | Community
@evgeny_shandrik, что-то ботов развелось, может добавим проверку на входе?
источник

ES

Evgeny Shandrik in Postman | Community
Nick Verbitsky
@evgeny_shandrik, что-то ботов развелось, может добавим проверку на входе?
Подумаем на досуге
источник

A

Alexey in Postman | Community
Evgeny Shandrik
Подумаем на досуге
Капча
источник

VB

VipChat Bot in Postman | Community
скажите плиз почему ошибка 503 может выводиться? сайт dadata.ru. вряд ли это ни их стороне. где может быть ошибка у меня? http://joxi.ru/l2Zyb3VcE41dZm
источник

A

Alexey in Postman | Community
VipChat Bot
скажите плиз почему ошибка 503 может выводиться? сайт dadata.ru. вряд ли это ни их стороне. где может быть ошибка у меня? http://joxi.ru/l2Zyb3VcE41dZm
источник

VB

VipChat Bot in Postman | Community
да, я понимаю что показывает ошибку сервера, но скорее это я что-то не так делаю чем у них ошибка. Или других вариантов нет?
источник

NV

Nick Verbitsky in Postman | Community
VipChat Bot
да, я понимаю что показывает ошибку сервера, но скорее это я что-то не так делаю чем у них ошибка. Или других вариантов нет?
Посмотрел их спеку по диагонали, и они для авторизации токены используют, а не basic.
По-хорошему 401 должно возвращать, но можно посмотреть в эту сторону.
источник