/
vladimir.suter
/
SE_FastAPI_Example
Обзор
Документация
Войти
/
vladimir.suter
/
SE_FastAPI_Example
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
main
test_main.py
51 строка
2 KB
Udintsev
Добавлены тесты для fastapi
11 июн 2026, 07:55
11 июн 2026, 07:55
f76e7f2
Код
Авторство
О чём код?
import pytest from fastapi.testclient import TestClient # Импортируем наше FastAPI приложение. # Если твой файл называется не main.py (например, app.py), поменяй импорт! from main import app # Создаем клиент для тестирования API client = TestClient(app) # ========================================== # ТЕСТ 1: Проверяем "что-нибудь еще" (корень сайта) # ========================================== def test_read_root(): """Простейший тест: проверяем, что главная страница отвечает кодом 200.""" response = client.get("/") # Проверяем, что сервер вернул успешный статус assert response.status_code == 200 # Проверяем, что нам вообще пришел какой-то JSON assert response.json() is not None # ========================================== # ТЕСТ 2: Проверяем работу ML модели # ========================================== def test_ml_model_predict(): """ Тестируем эндпоинт, который отвечает за предсказания. Мы отправляем туда тестовые данные (фейковые) и ждем ответ. """ # ⚠️ ВАЖНО: Замени '/predict' на реальный путь к твоему эндпоинту! # Например, если у тебя @app.post("/api/predict"), то пиши "/api/predict" endpoint_url = "/predict" # ⚠️ ВАЖНО: Замени структуру данных на ту, которую ждет твоя модель! # Если модель ждет другие имена полей (например, "data" или "inputs"), поменяй здесь. fake_features = { "text": "Хорошая работа" } # Отправляем POST-запрос с нашими тестовыми данными response = client.post(endpoint_url, json=fake_features) # Проверяем, что модель приняла данные и не упала (статус 200) assert response.status_code == 200, f"Модель вернула ошибку: {response.text}" # Проверяем, что в ответе что-то есть (предсказание) prediction = response.json() assert prediction is not None