Latest News From Our Blog

Немножко про автоматизацию тестирования API Хабр

By gabriel in IT Образование on 4 de julho de 2022

Здесь же мы будем заниматься именно автоматизацией, написанием кода. Наконец, еще раз хочу напомнить, что тестирование API становится особенно востребованным в свете растущей популярности микросервисной api тестирование архитектуры. Следовательно, даже в том случае, если на вашем проекте пока не используется тестирование на уровне API, вам имеет смысл присмотреться к возможностям, которые оно предоставляет.
Автоматизированное тестирование API
Их могут использовать специалисты, которых изначально нанимали в качестве ручных тестировщиков. Для них не потребуется много времени и усилий, чтобы изучить тему автоматизации в инструментах для тестирования API. Готовые автоматизированные коллекции легко экспортируются из инструментов и могут быть запущены на другом ПК без каких-либо проблем. Если вы никогда раньше не тестировали API, вам лучше сначала пройти курс «Тестирование REST API».

Какие инструменты нужны для тестирования API?

Если вам доступна документация, в которой описываются endpoint-ы сервисов вашего проекта (т. е. адреса, к которым обращаются запросы, относящиеся к API), – изучите ее. Ниже я буду рассматривать вариант, когда подробной документации или соответствующих доступов у вас нет. Для начала постараемся понять, зачем вообще тестировщику осваивать что-либо на таком уровне. Казалось бы, программные интерфейсы – это территория разработчиков. При подготовке к API тестированию начните с определения тестовой стратегии, которая поможет вам описать проверки в ваших тест-кейсах при интеграционном и функциональном тестировании.
Автоматизированное тестирование API
А для примера мы возьмем один из популярных и бесплатных инструментов с графическим интерфейсом — Postman. Было бы неправильно определять, какой из этих способов автоматизации тестирования API однозначно лучше. Мы в NIX, в зависимости от задач и целей, выбираем и то, и другое. SoapUI и Postman отлично подходят на начальных этапах автоматизации, когда в команде нет или очень мало автоматизаторов.

Подпишитесь на рассылку QA-новостей

Проверить работу описанных тестов можно в терминале IDE с помощью команды mvn clean test или с помощью junit. Библиотека Rest-Assured помогает выполнять тестирование REST-сервисов. Данная библиотека стала популярной ввиду ее просты и удобным функционалом. При тестировании API, как правило, приходится выполнять CRUD (аббревиатура от операций create, read, update, delete операции). Заголовки (опционально), предоставляющие дополнительную информацию для сервера (Headers) или тело(body), для некоторых методов, таких как POST, которое содержит отправленный ресурс. Автоматизированное функциональное тестирование ПО на наличие дефектов при выполнении различных пользовательских сценариев.

Большинство запросов имеют код ответа «200 OK», сообщающий о том, что операция выполнена успешно. В случае возникновения ошибки коды будут начинаться на 4 (ошибка на стороне клиента) или на 5 (ошибка на стороне сервера). Например, таковы всем известные ошибки 404 («клиент запросил несуществующий ресурс») и 500 («внутренняя ошибка сервера»). Обратите внимание, https://deveducation.com/ что браузеры предоставляют возможность просмотра подробностей запросов/ответов как в удобном формате («parsed» в Google Chrome, «pretty print» в Mozilla Firefoх), так и в «сыром» виде («source»). Конечно, для понимания проще «parsed»/«pretty print», но в том случае, когда вам необходимо скопировать часть запроса, лучше переключиться в режим «source».

Что такое API тестирование?

Нужные cookie можно забрать в браузере, открытом с помощью Selenium (driver.manage().getCookieNamed(«sessionId»).getValue()). Выберите XHR (XMLHttpRequest) – это интерфейс языка JavaScript, используемый для конструирования запросов, имеющих тело. Вы можете столкнуться с большим количеством однотипных запросов, порождаемых различными системами мониторинга (например, yandex.webvisor).
Автоматизированное тестирование API
В целом использование сниппетов в Postman это отличный способ ускорить рабочие процессы тестирования и разработки вашего API, особенно если вы имеете мало опыта в программировании. В случае возникновения любых вопросов Вы можете связаться с нами по адресу -testing.ru. Помимо теоретической части, вас также ждут практические задания для самостоятельной работы, которые вы можете прислать тренеру на проверку. После проверки практических заданий Вы получаете подробный комментарий по своей работе и при необходимости советы по доработке. По результатам комментариев тренера Вы можете переделать работу и отправить ее тренеру еще раз.

Почему мы выбрали именно Cucumber и Spock?

Установка системы CI — задача администратора, а не тестировщика. Но самостоятельно, в рамки курса разбирательства с «почему именно на этой OS вот такая ошибка» не входит. Также стоит отметить, что Cucumber подходит исключительно для интеграционных тестов. Несмотря на то, что они широко используются в автоматизированном тестировании, SoapUI и Postman позволяют запускать тесты только локально и не могут применяться в системах интеграции (Jenkins).
Автоматизированное тестирование API
В этой статье мы обсудим различные подходы к автоматизации тестов API с использованием Postman, Rest Assured и Karate DSL. Для расширения ваших возможностей используйте Fiddler или подобные ему инструменты (например, такие). Эти программы перехватывают весь сетевой трафик, позволяя просматривать, редактировать и воспроизводить отдельные запросы. Уже на этом уровне можно что-то тестировать – например, валидацию данных на стороне сервера. Если веб-клиент в браузере не позволил вам ввести некоторые значения – в Fiddler-е вы сконструируете запрос сами. Такой способ может существенно ускорить проверку большого набора данных для ввода, особенно если изменение значений в браузере занимает длительное время.

Post CommentLeave a reply

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *