Prog Academy
RU UA
QA та тестування

Що таке тестування API?

Тестування API — перевірка серверних методів напряму, без інтерфейсу: тестувальник надсилає запит із певними параметрами й звіряє відповідь — дані, структуру, код статусу та час обробки.

Такі перевірки швидші й надійніші за інтерфейсні: не потрібно чекати завантаження сторінки, а тест не ламається від зміни верстки. Крім того, API можна тестувати раніше — ще до того, як фронтенд буде готовий.

Перевіряють не лише успішний сценарій. Важливіша поведінка на межах: некоректні дані, відсутні поля, чужий токен, неіснуючий ідентифікатор. Помилки авторизації, знайдені на цьому рівні, часто виявляються найкритичнішими.

Інструменти: Postman для ручних перевірок і колекцій, REST Assured у Java, requests у Python — для автотестів.

Повʼязані терміни

API

API (Application Programming Interface) — це набір правил, за якими одна програма звертається до іншої: які запити можна надіслати, які параметри передати і в якому вигляді прийде відповідь. API дозволяє використовувати чужий сервіс, нічого не знаючи про його внутрішню будову.

REST API

REST API — найпоширеніший стиль побудови вебAPI, у якому кожен обʼєкт системи доступний за своєю адресою, а дія над ним задається HTTP-методом: GET — отримати, POST — створити, PUT — змінити, DELETE — видалити.

Integration Testing

Інтеграційне тестування перевіряє, як кілька компонентів працюють разом: застосунок і база даних, сервіс і зовнішнє API, два мікросервіси між собою. Окремо кожна частина може бути справною, а на стику все одно виникне помилка.

Test Automation

Автоматизація тестування — написання програм, які самі виконують перевірки й порівнюють результат з очікуваним. Такі тести запускають за кожної зміни коду, щоб швидко помічати поломки у вже працюючій функціональності.

JSON

JSON (JavaScript Object Notation) — текстовий формат обміну даними, у якому інформація записується парами «ключ — значення». Його розуміють усі мови програмування, і саме ним найчастіше відповідають сучасні API.