← До списку лабораторних по Python
Повний опис / сценарій лабораторної:
Meta: навчитися тестувати API не торкаючись справжньої мережі і бази даних. Krok 1. Взяти сервіс FastAPI з однієї з попередніх лабораторних. Krok 2. Встановити пакети httpx і pytest async для тестування. Komandi: cd ~/python_lab1; source .venv/bin/activate; pip install httpx pytest-asyncio Krok 3. Створити файл tests/test_api63.py. Krok 4. Додати фікстуру яка створює тестовий клієнт для FastAPI застосунку. Poyasnennya: використай TestClient або httpx AsyncClient з asgi застосунком. Krok 5. Написати тест для ендпоінта health який перевіряє код 200 і тіло відповіді. Krok 6. Додати тест для ендпоінта що використовує базу даних, замокавши репозиторій або шар доступу до даних. Krok 7. Виконати тести і переконатися що вони не вимагають реального сервера або мережі. Krok 8. Занотувати відмінності між юніт тестом логіки і інтеграційним тестом API. Krok 9. Продумати стратегію покриття критичних ендпоінтів інтеграційними тестами. Krok 10. Mini zvit. Zavdannya: опиши які перевірки обовязково мають бути у інтеграційних тестах до API.