#!/usr/bin/env python """ Скрипт для запуска тестов производительности и вывода результатов. Использование: python scripts/test_performance.py """ import os import sys import django # Добавляем путь к проекту sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) # Настраиваем Django os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'config.settings') django.setup() import subprocess import json def run_performance_tests(): """Запускает тесты производительности и выводит результаты.""" print("=" * 60) print("🚀 Запуск тестов производительности API") print("=" * 60) # Запускаем pytest с маркером performance # Используем python -m pytest для надежности в Windows cmd = [ sys.executable, '-m', 'pytest', '-v', '-m', 'performance', '--tb=short', '--capture=no', # Показываем print'ы 'apps/homework/tests/test_performance.py', ] # Получаем корневую директорию проекта (где manage.py) script_dir = os.path.dirname(os.path.abspath(__file__)) project_root = os.path.dirname(script_dir) result = subprocess.run( cmd, cwd=project_root, capture_output=False ) print("\n" + "=" * 60) if result.returncode == 0: print("✅ Все тесты производительности пройдены успешно!") else: print("⚠️ Некоторые тесты не прошли. Проверьте вывод выше.") print("=" * 60) return result.returncode == 0 if __name__ == '__main__': success = run_performance_tests() sys.exit(0 if success else 1)