Привет! Наконец выходные и это прекрасно. В прошлой статье издевался над полями своей формы обратной связи и делал это при помощи python и selenium. Сегодня возьмём  Postman и реализуем следующую задачу: заполним форму, отправим. Данные для заполнения полей будем брать из csv файла.

Подводных камней в установке Postman как в Win, так и в Linux нет, по этому не останавливаюсь на этом шаге. Для удобства решения задачи установил в Chrome плагин Postman Interceptor. Он записывает и передаёт в Postman наши реквесты. Удобно. На стороне Postman настройки простые:

Надо перехватить request отправки данных формы и потом сохранить его в коллекцию для дальнейшей работы. Перехваченное при помощи Postman Interceptor тело (Body) выглядит следующим образом:

Создал коллекцию artem.casa.form и сохранил туда данный запрос.

Поля (KEY):  email-2000, tel-3000, text-1000, textarea-4000 — название (в dom — это значение атрибута name) полей которые заполняли руками отправляя форму. Значение VALUE соответственно значения данных что вносились в поля.

Как писал в начале при постановке задаче нам надо как раз VALUE заполнять используя тестовые данные из файла. Значения будут каждый раз меняться (подставляться из файла) и будут переменными. Отредактируем наше Body присвоив переменные в VALUE. Должно получится так как на скрине ниже:

Подготовим файл с данными для отправки. Формат — csv, данные из других (по крайней мере txt) не воспринимает. Открываем excel, первая строка — название наших переменных через запятые. Следующие строки ниже — присваемые значения, так же через запятые. Сохраняем.

 

Ок, данные готовы. Пора спамить 🙂 Возвращаемся. Чтобы чудо произошло надо наш реквест в коллекции запустить через  Collection Runner.

Выбираем файл (Select File) в котором прописывали наши value и значения. Postman соотнесёт количество строк данных переведя их в итерации. В нашем случае их 3. Верно. Можно сделать их предварительный просмотр (Preview).

Всё, запускаем.

Код 200 — говорит о том что запросы вполне себе успешно ушли.

Именно ушли, но не факт что были приняты системой. Если внимательно читали и смотрели скрины, то заметили что в последней посылке данных (третья итерация) там где должен быть отправлен E-mail у нас пустое значение. Поле обязательно для заполнения. Система должна была откинуть такой запрос. Лезем в консоль Postman, можно вызвать сочетанием Ctrl + Alt + C. Просматриваем лог Response Body первой, второй итерации. На третьей замечаем:

Да, есть проблемы с форматом отображения данных, но message если перевести «на наш» означает: »

Уведомления о новых сообщениях приходит на почту, проверим сколько сообщений система приняла:

Верно, пришло два письма. Цель достигнута. Основной принцип отправки в Body тело Json с какими-то переменными точно такой же.

Конечно же такую отправку данных не стоит использовать для каких-то мелкопакостных  целей, а вот посмотреть в сторону негативного тестирования — вполне себе.