Если вы начинаете тестирование API и автоматизацию тестирования API, что вам следует знать? Если вы какое-то время занимались автоматизацией пользовательского интерфейса (Selenium / Cypress), вы обнаружите, что тестирование API для начала немного пугает.
Во-первых, нет интерфейса, с которым можно было бы взаимодействовать. В отличие от тестирования пользовательского интерфейса, при котором вы можете визуализировать действия и взаимодействовать с интерфейсом, тестирование API сводится к простым HTTP-запросам и ответам.
Например, рассмотрим простую функцию входа в систему:
При тестировании из пользовательского интерфейса все, что вам нужно сделать, это перейти на страницу входа, ввести имя пользователя и пароль и нажать кнопку отправки. Вы взаимодействуете с формой на странице.
Как тестировщик, вы можете не знать, что на самом деле происходит за кулисами, когда вы нажимаете кнопку отправки.
Если вы хотите протестировать ту же функциональность входа в систему на уровне API, с чего начать?
Вам нужно знать url адрес конечная точка что вам нужно отправить POST запрос к.
Вам нужно знать, в каком формате вам нужно отправить свой полезная нагрузка . Это JSON, Multipart, данные формы?
Вам также нужно знать, что заголовки вам необходимо предоставить с вашим запросом.
Что тогда после отправки запроса?
Вам нужно знать, что код состояния ответа ожидается вместе с тело ответа . Не только это, но и как извлечь различную информацию из ответа.
Я составил список элементов, которые должен знать каждый тестировщик, занимающийся тестированием API и автоматизацией тестирования API.
Этот список ни в коем случае не является исчерпывающим, но представляет собой минимум, необходимый, чтобы знать, хотите ли вы изучать тестирование API:
Дальнейшее чтение: