REST и SOAP: что нужно знать начинающему QA
Когда изучаешь тестирование, быстро встречаешь API, HTTP, REST, SOAP, JSON и XML. Для начала важно понять, как приложения обмениваются данными и что проверяет QA. API — интерфейс, через который одна программа взаимодействует с другой по определённым правилам. Например, интернет-магазин запрашивает у сервера название, цену и наличие товара. Неправильная цена на экране может быть следствием ошибки в ответе API. REST: запросили данные — получили ответ REST — архитектурный стиль взаимодействия между системами. REST API часто использует HTTP для запросов и ответов, а JSON — для представления данных. Например, запрос GET /products/42 может вернуть товар с ID 42, названием «Наушники» и ценой 3500. Запомни разницу: HTTP — протокол обмена запросами и ответами. REST — архитектурный стиль построения API. JSON — формат представления данных. REST не требует использовать только JSON. Какие HTTP-методы знать? GET — получить данные. POST — передать данные для обработки или создания ресурса. PUT — заменить представление ресурса. PATCH — изменить часть ресурса. DELETE — удалить ресурс. Что проверяет QA? Ответ 200 OK ещё не гарантирует, что всё работает правильно. Сервер мог вернуть не тот товар, неверную цену или чужие данные. Тестировщик проверяет статус ответа, значения и типы полей, реакцию на неправильные параметры, права доступа и бизнес-правила. Например, API вернул 200 OK, но запрещённую отрицательную цену. Статус не гарантирует правильность бизнес-логики. Базовые статусы: 200 — успешно; 201 — ресурс создан; 400 — некорректный запрос; 401 — нужна аутентификация; 403 — доступ запрещён; 404 — ресурс не найден; 500 — ошибка сервера. SOAP: похожая задача, другие правила SOAP — протокол обмена сообщениями. Он использует XML: Envelope — оболочка сообщения, Body — основная часть с запросом или ответом. Необязательный Header может передавать дополнительную информацию. WSDL описывает SOAP-сервис: его операции и ожидаемые сообщения. В SOAP QA проверяет структуру XML, обязательные элементы, соответствие контракту, результат и обработку SOAP Fault — сообщения об ошибке. При диагностике важно смотреть и на HTTP-ответ, и на SOAP Fault. Для ручных запросов подойдут Postman или SoapUI. REST и SOAP: в чём разница? REST — архитектурный стиль; часто работает с ресурсами и HTTP-методами. Формат данных жёстко не задан, часто используют JSON. Контракт HTTP API нередко описывают через OpenAPI. SOAP — протокол со структурированными XML-сообщениями; контракт сервиса часто описывают через WSDL. REST и SOAP — не просто «JSON против XML»: отличаются и правила взаимодействия. Но QA в обоих случаях проверяет запросы, ответы, бизнес-логику, негативные сценарии и права доступа. Сколько нужно знать на собеседовании? На старте научись объяснять API, HTTP, REST, SOAP, JSON и XML; понимать основные HTTP-методы и статусы; отправлять запросы в Postman и предлагать негативные сценарии. Например: что проверить, если сервер не находит товар с несуществующим ID? А если вернул 200 OK, но данные неправильные? Как убедиться, что пользователь не получит чужой заказ? Для вакансии с SOAP изучи XML, WSDL и структуру SOAP-сообщений. Для REST API полезно читать документацию OpenAPI. Универсального списка вопросов нет — ориентируйся на вакансию. Что почитать дальше: «Библия QA»: REST/SOAP/gRPC Тестирование API Не пытайся выучить всё за один день. Возьми один запрос, посмотри, что отправляешь и какой ответ получаешь, затем проверь еще позитивный сценарий и только потом приступай к проверке негативного сценария. Так теория превращается в практический навык. А что у вас спрашивали про API на собеседованиях — определения или задания в Postman?