Testing
Guía de testing del backend.
Tests Disponibles
- 781+ tests pasando (incluyendo 63 tests de GHL v2.2)
- Tests de endpoints
- Tests de servicios
- Tests de integraciones
- Tests de seguridad
Tests de Imágenes de Perfil
Archivo: backend/tests/endpoints/test_profiles_admin.py
Clase: TestProfilePictureUpload
Los tests verifican:
- Subida exitosa de imágenes válidas (JPEG, PNG, WebP)
- Validación de tipo de archivo (rechaza tipos inválidos)
- Validación de tamaño máximo (2MB)
- Actualización correcta en la base de datos
- Formato de ruta guardada (
/api/uploads/profiles/{user_id}/{filename}) - Eliminación de imágenes anteriores al subir nueva
- Permisos de admin para subir imágenes de otros usuarios
Nota: Los endpoints ahora usan el servicio centralizado ProfileImageService para validación, almacenamiento y normalización de rutas.
Nota sobre imágenes de prueba:
- Los tests usan imágenes válidas creadas con helpers de test (
tests/helpers/image_fixtures.py) - Esto asegura que funcionen tanto con validación básica como con Pillow
- Las imágenes se generan automáticamente y son compatibles con la validación mejorada
- Estado de validación: ✅ 16 tests pasando (15 passed + 1 skipped)
- Los helpers detectan automáticamente si Pillow está disponible y crean imágenes reales
Ejecutar Tests
# Ejecutar todos los tests
./scripts/test_backend.sh
# Ejecutar tests específicos
./scripts/test_backend.sh tests/endpoints/projects/
Más Información
Consulta la Documentación de Testing para más detalles.