Приходилось ли задавать рандомные значения для параметров в теле запроса
Что проверяют
Понимаете ли вы, где случайные данные помогают, а где превращают тест в лотерею. Вопрос простой на вид, но по ответу видно, отличаете ли вы генерацию уникальных значений от проверки свойств на случайных входах.
Как отвечать
Разделите два случая.
Первый это уникальность. Почта, телефон, номер договора генерируются, чтобы прогоны не спотыкались друг о друга и тест можно было запускать повторно и параллельно. Здесь хватает Faker или суффикса от времени, а проверки при этом остаются строгими.
Второй это поиск ошибок на широком входе. Границы берутся из контракта: длины строк, диапазоны чисел, форматы дат, необязательные поля. Дальше либо подход с проверкой свойств через Hypothesis, где утверждение формулируется как свойство, а библиотека сама ужимает найденный контрпример до минимального, либо генерация прямо по описанию OpenAPI, этим занимается schemathesis. В Postman есть встроенные подстановки вроде {{$randomInt}}, но для системной работы их мало.
Главное правило назовите отдельно: случайность обязана быть воспроизводимой. Зерно генератора фиксируется и печатается в отчёт вместе с телом запроса, иначе упавший прогон невозможно повторить и находка уходит в разряд «показалось».
И про проверки: на случайных данных утверждают свойство, а не конкретное значение. Ответ соответствует схеме, созданная запись читается обратно такой же, остаток не стал отрицательным.
Где спотыкаются
Генерируют без зерна и не логируют то, что отправили. Тест краснеет раз в неделю, воспроизвести его не получается, и в итоге его просто отключают.
Второе: суют случайность туда, где нужна определённость. Ожидаемый результат зависит от сгенерированного числа, проверка написана на глазок, и тест ловит не баги продукта, а собственные допущения автора.
Третье: считают, что случайные валидные значения заменяют негативные проверки. Пустое тело, лишнее поле, строка вместо числа, значение за границей диапазона: это отдельные осознанные случаи, генератор до них почти не доберётся.