Всё, что мы тестировали до сих пор в этой главе, — это интерфейс браузера: кнопки, формы, страницы. Но браузер — не единственный способ обратиться к серверу. Программы тоже обращаются друг к другу напрямую, без интерфейса пользователя. Этот способ называется API, и тестировщику важно уметь работать с ним напрямую — это часто быстрее и надёжнее, чем через интерфейс.
Чему научишься за этот урок:
— объяснять, что такое API простыми словами;
— понимать идею REST через ресурсы и HTTP-методы;
— различать REST и SOAP и называть, где на практике встретится каждый.
Что такое API
API (Application Programming Interface, интерфейс программирования приложений) — это способ, которым одна программа обращается к другой программе за данными или действием, БЕЗ интерфейса пользователя. Когда мобильное приложение показывает список курсов, оно не рисует эти данные само — оно посылает запрос на сервер через API, получает данные и уже потом отображает их на экране.
Вы уже фактически видели API в главе 3, когда открывали вкладку Network в DevTools: каждый запрос от браузера к серверу за данными («получить список курсов», «применить промокод») — это и есть обращение к API. Просто раньше мы смотрели на него ИЗНУТРИ браузера, а теперь научимся обращаться к нему НАПРЯМУЮ.
REST: ресурсы и HTTP-методы
REST (Representational State Transfer) — самый распространённый сегодня архитектурный стиль API. Его идея: всё, с чем работает API, представлено как ресурс — сущность, доступная по своему URL. Например, «курсы» — это ресурс /api/courses, а конкретный курс с номером 123 — ресурс /api/courses/123.
К ресурсу применяются уже знакомые вам из главы 3 HTTP-методы — только теперь не браузер решает, какой метод использовать, а тестировщик выбирает его сам, в зависимости от того, что нужно сделать:
GET /api/courses -> получить список всех курсов GET /api/courses/123 -> получить один конкретный курс POST /api/courses -> создать новый курс PUT /api/courses/123 -> изменить курс целиком DELETE /api/courses/123 -> удалить курс
Ответ REST API обычно приходит в формате JSON — том самом, который вы уже разбирали в уроке про HTML/CSS/JS/JSON главы 3.
SOAP: легаси-протокол
SOAP (Simple Object Access Protocol) — более старый протокол обмена данными между программами. В отличие от REST, SOAP использует формат XML (а не JSON) и более строгие, «тяжёлые» правила оформления запроса. Новые проекты сегодня почти всегда делают REST — SOAP встречается как легаси (унаследованный код): в банковских системах, старых корпоративных интеграциях, некоторых государственных системах, которые были построены много лет назад и до сих пор работают.
Не нужно учить SOAP «на всякий случай» так же глубоко, как REST — это надо просто узнавать в проекте и понимать, что перед вами именно он: другой формат (XML вместо JSON), другие правила запроса, но общая цель та же — обмен данными между программами.
Итог:
— API — способ, которым программы обращаются друг к другу за данными без интерфейса пользователя;
— REST — архитектурный стиль, где всё представлено как ресурс, доступный по URL, а к ресурсу применяются HTTP-методы (GET/POST/PUT/DELETE);
— ответ REST API обычно в формате JSON;
— SOAP — более старый протокол на XML, сегодня встречается как легаси в банках, госсистемах, старых корпоративных интеграциях; для новых проектов используют REST.
Контрольный вопрос. Что такое API?
Подсказка: Расшифровка аббревиатуры прямо говорит про интерфейс — но не для человека, а для программ.
Проверить ответ →
Реальная проверка — на нашей платформе, бесплатно и без регистрации. Открыть задачу и ввести ответ →
Контрольный вопрос. Что такое ресурс в REST?
Подсказка: В примере урока ресурсами были «курсы» и «конкретный курс» — подумай, что их объединяет.
Проверить ответ →
Реальная проверка — на нашей платформе, бесплатно и без регистрации. Открыть задачу и ввести ответ →
Контрольный вопрос. В каком формате обычно приходит ответ REST API?
Подсказка: Это тот же формат, который вы уже разбирали в главе 3, в уроке про HTML/CSS/JS/JSON.
Проверить ответ →
Реальная проверка — на нашей платформе, бесплатно и без регистрации. Открыть задачу и ввести ответ →
Контрольный вопрос. Где сегодня чаще всего встречается SOAP?
Подсказка: В уроке прямо названо, что SOAP — не выбор новых проектов, а то, что осталось от старых.
Проверить ответ →
Реальная проверка — на нашей платформе, бесплатно и без регистрации. Открыть задачу и ввести ответ →
Контрольный вопрос. Какие из утверждений про REST и SOAP верны (выбери все подходящие)?
Выберите все верные варианты.
Подсказка: Сверь каждое утверждение с итогом урока — одно из четырёх переворачивает реальное соотношение REST и SOAP по возрасту и распространённости.
Проверить ответ →
Реальная проверка — на нашей платформе, бесплатно и без регистрации. Открыть задачу и ввести ответ →
Контрольный вопрос. Как называется архитектурный стиль API, где всё представлено как ресурс, доступный по URL? Ответь по-английски.
Подсказка: Это стиль, который сегодня выбирают почти все новые проекты — противоположность легаси-варианту урока.
Проверить ответ →
Реальная проверка — на нашей платформе, бесплатно и без регистрации. Открыть задачу и ввести ответ →
Задание. Нужно получить список всех курсов через REST API. Какой HTTP-метод для этого используют? Ответь одним словом.
Подсказка: Это метод, который вы уже разбирали в главе 3 — он ничего не создаёт и не удаляет, только забирает данные.
✅ Готово, если: ты ввёл(а) верный ответ, и онлайн-проверка его приняла.
Проверить ответ →
Реальная проверка — на нашей платформе, бесплатно и без регистрации. Открыть задачу и ввести ответ →
Задание. Нужно удалить курс с номером 456 через REST API. Как будет выглядеть путь ресурса? Ответь в формате /api/courses/номер.
Подсказка: Посмотри на пример из ASCII-схемы урока с номером 123 и замени его на нужный номер.
✅ Готово, если: ты ввёл(а) верный ответ, и онлайн-проверка его приняла.
Проверить ответ →
Реальная проверка — на нашей платформе, бесплатно и без регистрации. Открыть задачу и ввести ответ →
Задание. Объясни в 2-3 предложениях: почему тестировщику полезно уметь обращаться к API напрямую, а не только через интерфейс браузера?
Критерий приёмки: объяснено, что обращение к API напрямую позволяет проверять сервер отдельно от интерфейса — быстрее, чем клики по интерфейсу, и точнее показывает, что реально происходит на сервере, без влияния возможных дефектов самого интерфейса (аналогия с уже пройденным приёмом из главы 7 — отправка запроса в обход формы через вкладку Network).
Подсказка: Вспомни урок про формы и валидацию из главы 7 — там уже был приём отправки запроса в обход интерфейса. Подумай, зачем он был нужен.
✅ Готово, если: программа запускается без ошибок и выводит то, что просят в задании.
Онлайн-проверка ответа появится позже
Задание. Компания разрабатывает новый мобильный банк, но при этом интегрируется со старой системой центрального банка, которая работает уже 15 лет. Какой протокол — REST или SOAP — тестировщик, скорее всего, встретит при работе именно со старой интеграцией, а какой — в самом новом мобильном приложении? Обоснуй в 2-3 предложениях, опираясь на характеристики из урока, а не только на догадку.
Критерий приёмки: названо, что в новом мобильном приложении, скорее всего, будет REST (новые проекты выбирают REST), а в интеграции со старой 15-летней системой центрального банка — вероятно SOAP (легаси в банковских системах — характерный пример из урока). Обоснование опирается на возраст и тип каждой системы, а не только на утверждение без объяснения.
Подсказка: Сопоставь возраст каждой системы (совсем новая vs 15 лет) с тем, что урок говорит про типичное место REST и SOAP.
✅ Готово, если: программа запускается без ошибок и выводит то, что просят в задании.
Онлайн-проверка ответа появится позже
Что дальше
Теперь, когда понятна идея API и REST, пора попробовать отправлять запросы напрямую — без браузера. В следующем уроке разберём Postman: инструмент, которым тестировщики отправляют запросы к API вручную, без единой строчки кода.
