#json #enums #postman #postman-mocks
#json #перечисления #postman #postman-издевается
Вопрос:
В Postman я отправляю POST-запрос с JSON-body. Статус поля имеет 9 предопределенных значений ENUM: Открыто, Зарезервировано, Оплачено, Отправлено, Доставлено, возвращено, частично возвращено, Закрыто, отменено. Как я могу рандомизировать значение этого поля при отправке новых запросов?
{
"status": "Opened"
}
Ответ №1:
a= ["Opened", "Reserved", "Paid", "Shipped", "Delivered", "Returned", "PartlyReturned", "Closed", "Canceled"]
pm.environment.set("value", _.sample(a))
В использовании тела:
{
"status": "{{value}}"
}
Как упоминал Дэнни в комментарии выше, это правильный путь
Игнорировать ниже :
pm.environment.set("value",a[Math.floor(Math.random() * ((a.length-1) - 0 1) 0)])
Добавьте это в предварительный запрос, теперь изменяемое значение изменяется случайным образом. В использовании тела:
{
"status": "{{value}}"
}
вы также можете использовать в сборке динамическую переменную $randomint для этого
a= ["Opened", "Reserved", "Paid", "Shipped", "Delivered", "Returned", "PartlyReturned", "Closed", "Canceled"]
random=pm.variables.replaceIn("{{$randomInt}}")
random = Math.floor((random/1000)*(a.length))
pm.environment.set("value",a[random])
Комментарии:
1. Lodash можно использовать для небольшого упрощения кода
pm.environment.set("value", _.sample(a))
😁2. Полностью забыл о Lodash uff