Тестирование API Урок 3: PUT с передачей значения
Третий урок - снова будем делать PUT, но теперь не пустой,
а передадим в нём значение.
Предположим, что мы получили от клиента email о том, что наш API получил дополнительный endpoint /flaskapi/api/order/
и новую версию документации.
Base URL: 'http://www.qaces.ru' 1. Resource: /get Method: GET Response: 200 OK 2. Resource: /put Method: PUT Response: 200 OK 3. Resource: /order/<int:put_id> Method: PUT Response: 200 OK Order with id <put_id> was added to the system. Thank you!
Сразу обращаем внимание на то, что после /flaskapi/api/order/ появляется какая-то странная конструкция.
Дело в том, что таким образом в документации обозначили переменное значение целочисленного типа.
Можно встретить разный стиль обозначения переменных в документации к API
Например:
/order/%put_id
Или
/order/#put_id#
Я подозреваю, что это зависит от того, на каком языке
программирования
привык писать разработчик, который сделал документацию к API
Теперь Вам нужно проверить возвращает ли запрос типа PUT обратно ответ 200 и сообщение
Order with id <put_id> was added to the system. Thank you!
Где put_id это целое число которые мы будем передавать в URL. Но обо всём по порядку.
Продолжаем работать с
SOAP UI
и будем обновлять проект из
второго урока
Напоминаю свой совет из предыдущего урока - поменяйте имя Method 1 в предыдущем запросе на что-то новое - например на Method01
Нажмите правой кнопкой мыши на qaces.ru выбираем New Resource
Введите новый Resource Path, который узнали из документакции к API - перечитать документацию
Замените HTTP Method с GET на PUT.
Переименуйте Method 1 в Method02
Допишите какое-то целое число после /order/ я дописываю 2020
Если добавили 2020 то в качестве ответа ждите
Order with id 2020 was added to the system. Thank you!
Выполните запрос (кликнуть на зелёный треугольник)
И изучите ответ
Мы получили ответ:
Order with id 2020 was added to the system. Thank you!
Как и ожидали. Статус 200 OK тоже на месте.
Почему я прошу Вас менять названия Method 1. В некоторых версиях SOAP UI, если Вы создаёте
в одном проекте несколько одинаковых HTTP запросов на один base URL SOAP UI не различает их
и все прописанные пути становятся равными последнему.
Мы создали два запроса PUT поэтому новый PUT мог испоритить старый затерев /flaskapi/api/put и
написав /flaskapi/api/order/2020, то есть вместо двух разных запросов мы бы имели две одинаковых.
Если 200 не пришло значит мой сайт накрылся. Пишите в комментариях получилось или нет.
В качестве упражнения попробуйте послать запрос с другим числом, послать запрос где вместо числа
будут какие-то другие символы.
Надеюсь, Вы не поленились и посмотрели, что если передать не число а, например, строку ABC - в ответ придёт ошибка 404.
Большая просьба - не посылайте слишком много запросов. Я не уверен какую нагрузку выдержит сайт на моём тарифе.