Files
app-padel/backend/docs/BETA_TESTING_API.md
Ivan Alcaraz dd10891432
Some checks failed
CI/CD Pipeline / 🧪 Tests (push) Has been cancelled
CI/CD Pipeline / 🏗️ Build (push) Has been cancelled
CI/CD Pipeline / 🚀 Deploy to Staging (push) Has been cancelled
CI/CD Pipeline / 🚀 Deploy to Production (push) Has been cancelled
CI/CD Pipeline / 🏷️ Create Release (push) Has been cancelled
CI/CD Pipeline / 🧹 Cleanup (push) Has been cancelled
FASE 7 COMPLETADA: Testing y Lanzamiento - PROYECTO FINALIZADO
Implementados 4 módulos con agent swarm:

1. TESTING FUNCIONAL (Jest)
   - Configuración Jest + ts-jest
   - Tests unitarios: auth, booking, court (55 tests)
   - Tests integración: routes (56 tests)
   - Factories y utilidades de testing
   - Coverage configurado (70% servicios)
   - Scripts: test, test:watch, test:coverage

2. TESTING DE USUARIO (Beta)
   - Sistema de beta testers
   - Feedback con categorías y severidad
   - Beta issues tracking
   - 8 testers de prueba creados
   - API completa para gestión de feedback

3. DOCUMENTACIÓN COMPLETA
   - API.md - 150+ endpoints documentados
   - SETUP.md - Guía de instalación
   - DEPLOY.md - Deploy en VPS
   - ARCHITECTURE.md - Arquitectura del sistema
   - APP_STORE.md - Material para stores
   - Postman Collection completa
   - PM2 ecosystem config
   - Nginx config con SSL

4. GO LIVE Y PRODUCCIÓN
   - Sistema de monitoreo (logs, health checks)
   - Servicio de alertas multi-canal
   - Pre-deploy check script
   - Docker + docker-compose producción
   - Backup automatizado
   - CI/CD GitHub Actions
   - Launch checklist completo

ESTADÍSTICAS FINALES:
- Fases completadas: 7/7
- Archivos creados: 250+
- Líneas de código: 60,000+
- Endpoints API: 150+
- Tests: 110+
- Documentación: 5,000+ líneas

PROYECTO COMPLETO Y LISTO PARA PRODUCCIÓN
2026-01-31 22:30:44 +00:00

3.5 KiB

API de Beta Testing y Feedback - Fase 7.2

Esta API permite gestionar el sistema de beta testing y feedback de la aplicación Padel.

Autenticación

Todas las rutas requieren autenticación mediante Bearer token en el header:

Authorization: Bearer <token>

Las rutas marcadas como (Admin) requieren rol de ADMIN o SUPERADMIN.


Endpoints de Beta Testing

Registrarse como Beta Tester

POST /api/v1/beta/register

Body:

{
  "platform": "WEB" | "IOS" | "ANDROID",
  "appVersion": "1.0.0-beta"
}

Ver mi estado de Beta Tester

GET /api/v1/beta/me

Listar todos los Beta Testers (Admin)

GET /api/v1/beta/testers?limit=50&offset=0

Estadísticas de Beta Testing (Admin)

GET /api/v1/beta/stats

Actualizar estado de Beta Tester (Admin)

PUT /api/v1/beta/testers/:id/status

Body:

{
  "status": "ACTIVE" | "INACTIVE"
}

Endpoints de Feedback

Enviar Feedback

POST /api/v1/beta/feedback

Body:

{
  "type": "BUG" | "FEATURE" | "IMPROVEMENT" | "OTHER",
  "category": "UI" | "PERFORMANCE" | "BOOKING" | "PAYMENT" | "TOURNAMENT" | "LEAGUE" | "SOCIAL" | "NOTIFICATIONS" | "ACCOUNT" | "OTHER",
  "title": "Título del feedback",
  "description": "Descripción detallada",
  "severity": "LOW" | "MEDIUM" | "HIGH" | "CRITICAL",
  "screenshots": ["https://example.com/screenshot1.png"],
  "deviceInfo": {
    "userAgent": "Mozilla/5.0...",
    "platform": "MacIntel",
    "screenResolution": "1920x1080",
    "browser": "Chrome",
    "os": "macOS",
    "appVersion": "1.0.0"
  }
}

Ver mi Feedback

GET /api/v1/beta/feedback/my?limit=20&offset=0

Listar todo el Feedback (Admin)

GET /api/v1/beta/feedback/all?type=BUG&category=BOOKING&status=PENDING&severity=HIGH&limit=20&offset=0

Estadísticas de Feedback (Admin)

GET /api/v1/beta/feedback/stats

Actualizar Estado de Feedback (Admin)

PUT /api/v1/beta/feedback/:id/status

Body:

{
  "status": "PENDING" | "IN_PROGRESS" | "RESOLVED" | "CLOSED",
  "resolution": "Notas sobre la resolución (opcional)"
}

Endpoints de Issues Beta (Admin)

Listar todos los Issues

GET /api/v1/beta/issues?limit=20&offset=0

Crear Issue

POST /api/v1/beta/issues

Body:

{
  "title": "Título del issue",
  "description": "Descripción detallada",
  "priority": "LOW" | "MEDIUM" | "HIGH" | "CRITICAL",
  "assignedTo": "uuid-del-usuario"
}

Vincular Feedback a Issue

POST /api/v1/beta/issues/link

Body:

{
  "feedbackId": "uuid-del-feedback",
  "issueId": "uuid-del-issue"
}

Datos de Prueba

El script prisma/seed-beta.ts crea 8 usuarios de prueba:

Email Nombre Plataforma Nivel
beta1@padelapp.com Carlos Rodriguez WEB ADVANCED
beta2@padelapp.com María González IOS INTERMEDIATE
beta3@padelapp.com Juan Pérez ANDROID ELEMENTARY
beta4@padelapp.com Ana Martínez WEB COMPETITION
beta5@padelapp.com Diego López IOS ADVANCED
beta6@padelapp.com Lucía Fernández ANDROID BEGINNER
beta7@padelapp.com Martín Silva WEB INTERMEDIATE
beta8@padelapp.com Valentina Torres IOS PROFESSIONAL

Contraseña: BetaTester123!


Comandos Útiles

# Ejecutar seed de beta testers
npx tsx prisma/seed-beta.ts

# Migrar base de datos
npx prisma migrate dev --name add_beta_testing

# Validar schema
npx prisma validate

# Generar cliente Prisma
npx prisma generate