/
kkkuceravin
/
test_task
Обзор
Документация
Войти
/
kkkuceravin
/
test_task
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
test_api.py
93 строки
3 KB
kuceravink
test_API
30 дек 2025, 20:42
30 дек 2025, 20:42
96b2faa
Код
Авторство
О чём код?
import requests import json BASE_URL = 'http://127.0.0.1:8000/api/auth' def test_registration(): """Тест регистрации""" url = f'{BASE_URL}/register/' data = { 'email': 'testuser@example.com', 'password': 'SecurePass123', 'password2': 'SecurePass123', 'first_name': 'Иван', 'last_name': 'Иванов' } print('Тестируем регистрацию...') response = requests.post(url, json=data) print(f'Статус: {response.status_code}') print(f'Ответ: {response.json()}') if response.status_code == 201: print('✅ Регистрация успешна!') return response.json()['access_token'] else: print('❌ Ошибка регистрации') return None def test_login(): """Тест входа""" url = f'{BASE_URL}/login/' data = { 'email': 'testuser@example.com', 'password': 'SecurePass123' } print('\nТестируем вход...') response = requests.post(url, json=data) print(f'Статус: {response.status_code}') if response.status_code == 200: print('✅ Вход успешен!') result = response.json() print(f'Токен получен: {result["access_token"][:50]}...') return result['access_token'] else: print('❌ Ошибка входа') print(f'Ответ: {response.json()}') return None def test_profile(access_token): """Тест получения профиля""" url = f'{BASE_URL}/profile/' headers = { 'Authorization': f'Bearer {access_token}' } print('\nТестируем получение профиля...') response = requests.get(url, headers=headers) print(f'Статус: {response.status_code}') if response.status_code == 200: print('✅ Профиль получен!') print(f'Данные: {response.json()}') else: print('❌ Ошибка получения профиля') print(f'Ответ: {response.json()}') if __name__ == '__main__': print('=== Тестирование API аутентификации ===\n') # Сначала регистрация token = test_registration() # Если регистрация не удалась (пользователь уже есть), пробуем вход if not token: token = test_login() # Тестируем профиль если есть токен if token: test_profile(token) print('\n=== Тестирование завершено ===')