🧪 Plan de Pruebas

RutaCC - Estrategia y Casos de Prueba
Versión 1.0 | Junio 2026
Proyecto: RutaCC
Tipo: Plan de Pruebas
Fecha: 18 de Junio de 2026
Responsable: Equipo QA

📑 Índice de Contenidos

  1. Introducción y Objetivos
  2. Alcance de las Pruebas
  3. Estrategia de Pruebas
  4. Ambientes de Prueba
  5. Pruebas Funcionales
  6. Pruebas de Seguridad
  7. Pruebas de Rendimiento
  8. Pruebas de Integración
  9. Pruebas de Regresión
  10. Casos de Prueba Detallados
  11. Criterios de Aceptación
  12. Entregables

1. Introducción y Objetivos

1.1 Propósito

Este documento establece el Plan de Pruebas del sistema RutaCC, definiendo la estrategia, alcance, recursos y cronograma para asegurar la calidad del software antes de su lanzamiento a producción.

1.2 Objetivos

2. Alcance de las Pruebas

2.1 Módulos a Probar

MóduloAlcancePrioridad
Autenticación y SeguridadLogin, logout, sesiones, roles, permisosCrítica
Gestión de TenantsCRUD tenants, aislamiento de datosCrítica
Gestión de UsuariosCRUD usuarios, asignación de rolesAlta
VehículosCRUD vehículos, documentos, estadosAlta
ConductoresCRUD conductores, licencias, estadosAlta
BodegasCRUD bodegas, geolocalizaciónMedia
PedidosCRUD pedidos, asignación a despachosAlta
DespachosFlujo completo: crear, planificar, iniciar, finalizarCrítica
CombustibleRegistro de cargas, asociación a despachosMedia
MantencionesRegistro, seguimiento, costosMedia
FallosRegistro, estados, impacto en vehículosMedia
CobrosRegistro, pagos, alertasMedia
ReportesDashboard, costos, alertasMedia

2.2 Fuera de Alcance

3. Estrategia de Pruebas

3.1 Niveles de Pruebas

Pirámide de pruebas:
  1. Pruebas Unitarias (70%): Funciones individuales
  2. Pruebas de Integración (20%): Interacción entre módulos
  3. Pruebas de Sistema (10%): Flujo completo end-to-end

3.2 Tipos de Pruebas

TipoDescripciónHerramienta
FuncionalesValidar que cada función cumple su requerimientoManual + Scripts
SeguridadVerificar protección contra vulnerabilidadesOWASP ZAP, SQLMap
RendimientoMedir tiempos de respuesta y cargaJMeter, GTmetrix
UsabilidadEvaluar experiencia de usuarioPruebas con usuarios
CompatibilidadVerificar en múltiples navegadoresBrowserStack
RegresiónAsegurar que cambios no rompen funcionalidadScripts automatizados
AceptaciónValidación final con el clienteManual

4. Ambientes de Prueba

AmbientePropósitoDatosAcceso
Local Desarrollo y pruebas unitarias Datos de prueba Desarrolladores
Staging Pruebas de integración y sistema Copia anonimizada de producción QA + Desarrolladores
Pre-Producción Pruebas finales antes de deploy Datos reales (solo lectura) QA + Cliente
Producción Sistema en vivo Datos reales Usuarios finales

5. Pruebas Funcionales

5.1 Flujo Crítico: Ciclo de Vida de un Despacho

IDCaso de PruebaPasosResultado EsperadoPrioridad
TC-001 Crear despacho exitosamente 1. Login como despachador
2. Ir a Despachos
3. Crear nuevo despacho
4. Seleccionar bodega, vehículo, conductor
5. Guardar
Despacho creado con estado "creada" y número de orden único Crítica
TC-002 Asignar pedidos a despacho 1. Abrir despacho creado
2. Asignar pedidos pendientes
3. Guardar
Pedidos asociados al despacho con estado "asignado" Crítica
TC-003 Planificar ruta de entrega 1. Abrir planificador de ruta
2. Ordenar pedidos (drag & drop)
3. Guardar orden
Pedidos actualizados con campo "orden" correcto Alta
TC-004 Iniciar despacho 1. Ir a Despachos Inicio
2. Seleccionar despacho
3. Ingresar km de salida
4. Confirmar inicio
Estado cambia a "en_ruta", vehículo y conductor también Crítica
TC-005 Marcar pedido como entregado 1. En despacho en ruta
2. Seleccionar pedido
3. Marcar como entregado
Pedido con estado "entregada" y hora real de llegada Alta
TC-006 Finalizar despacho 1. Ir a Despachos Cierre
2. Seleccionar despacho
3. Ingresar km de llegada
4. Confirmar finalización
Despacho "finalizada", vehículo y conductor "disponible" Crítica
TC-007 Cancelar despacho 1. Seleccionar despacho
2. Cancelar
Despacho "cancelada", recursos liberados Media

5.2 Módulo de Vehículos

IDCaso de PruebaResultado Esperado
TC-010 Crear vehículo con datos válidos Vehículo creado exitosamente
TC-011 Crear vehículo con patente duplicada Error: patente ya existe
TC-012 Editar vehículo Datos actualizados correctamente
TC-013 Desactivar vehículo Estado cambia a "inactivo"
TC-014 Registrar documentos del vehículo Documentos asociados correctamente
TC-015 Ver alertas de documentos próximos a vencer Alertas mostradas en dashboard

5.3 Módulo de Conductores

IDCaso de PruebaResultado Esperado
TC-020 Crear conductor con RUT válido Conductor creado exitosamente
TC-021 Crear conductor con RUT duplicado Error: RUT ya existe
TC-022 Registrar licencia de conductor Licencia asociada con vencimiento
TC-023 Cambiar estado del conductor Estado actualizado correctamente

5.4 Módulo de Reportes

IDCaso de PruebaResultado Esperado
TC-030 Ver dashboard con estadísticas del mes Estadísticas mostradas correctamente
TC-031 Generar reporte de costos mensual Reporte con datos correctos por vehículo
TC-032 Ver alertas de vencimiento Documentos próximos a vencer listados
TC-033 Ver cobros pendientes Cobros no pagados mostrados

6. Pruebas de Seguridad

6.1 Matriz OWASP Top 10

IDVulnerabilidadPruebaCriterio de Aceptación
SEC-001 A01: Broken Access Control Intentar acceder a endpoints sin autenticación Sistema redirige a login o retorna 401
SEC-002 A01: Broken Access Control Intentar acceder a datos de otro tenant Sistema no muestra datos de otros tenants
SEC-003 A03: Injection (SQL) Inyectar SQL en campos de formulario Sistema sanitiza y no ejecuta SQL inyectado
SEC-004 A03: Injection (XSS) Inyectar scripts en campos de texto Sistema escapa caracteres y no ejecuta scripts
SEC-005 A05: Security Misconfiguration Verificar headers de seguridad Headers presentes: CSP, X-Frame-Options, etc.
SEC-006 A07: Authentication Failures Intentar login con credenciales inválidas Sistema no revela si usuario o password es incorrecto
SEC-007 A07: Authentication Failures Verificar cifrado de contraseñas Contraseñas almacenadas con bcrypt (cost 12)
SEC-008 A08: Software and Data Integrity Verificar protección de archivos sensibles No se puede acceder a config/database.php directamente

6.2 Pruebas de Aislamiento Multi-Tenant

IDPruebaResultado Esperado
MT-001 Crear tenant A y tenant B con datos propios Ambos tenants tienen datos independientes
MT-002 Usuario de tenant A intenta acceder a datos de tenant B Acceso denegado, no ve datos del otro tenant
MT-003 Modificar tenant_id en request HTTP Sistema ignora el cambio y usa el de la sesión
MT-004 Eliminar tenant A Solo se eliminan datos del tenant A, B permanece intacto

7. Pruebas de Rendimiento

7.1 Métricas Objetivo

MétricaObjetivoMétodo de Medición
Tiempo de carga de página< 2 segundosChrome DevTools, GTmetrix
Tiempo de respuesta API< 500 msPostman, JMeter
Usuarios concurrentes100+ sin degradaciónJMeter
Consultas SQL lentasNinguna > 1 segundoSlow Query Log
Uso de memoria< 256 MB por requestPHP memory_get_usage()

7.2 Escenarios de Carga

EscenarioUsuariosDuraciónResultado Esperado
Carga normal5015 minTodos los requests exitosos
Carga pico10015 minTiempo respuesta < 1s
Estrés20015 minDegradación controlada
Spike0 → 150 en 1 min10 minRecuperación sin errores

8. Pruebas de Integración

8.1 Integraciones a Validar

IDIntegraciónPrueba
INT-001 Frontend ↔ Backend Todas las páginas cargan datos correctamente
INT-002 Backend ↔ Base de Datos Todas las operaciones CRUD funcionan
INT-003 Sistema ↔ OpenStreetMap Mapas cargan y geocoding funciona
INT-004 Sistema ↔ OSRM Cálculo de rutas funciona
INT-005 Módulo Despachos ↔ Pedidos Asignación de pedidos a despachos
INT-006 Módulo Vehículos ↔ Documentos Documentos asociados a vehículos

9. Pruebas de Regresión

9.1 Suite de Regresión

Después de cada cambio significativo, se ejecuta la suite de regresión que incluye:

  1. Login/Logout funcional
  2. CRUD completo de vehículos
  3. CRUD completo de conductores
  4. Flujo completo de despacho (crear → finalizar)
  5. Generación de reportes
  6. Alertas de vencimiento
  7. Permisos de usuario

9.2 Automatización

Se recomienda automatizar las siguientes pruebas:

10. Casos de Prueba Detallados - Módulo Despachos

10.1 Caso de Prueba: Flujo Completo de Despacho

📋 TC-100: Flujo Completo de Despacho

Objetivo: Validar el ciclo de vida completo de un despacho
Precondiciones:
• Usuario despachador autenticado
• Al menos 1 vehículo disponible
• Al menos 1 conductor disponible
• Al menos 1 bodega activa
• Al menos 3 pedidos pendientes

Pasos:
1. Navegar a módulo de Despachos
2. Click en "Crear Despacho"
3. Seleccionar bodega origen: "Bodega Central"
4. Seleccionar vehículo: "ABCD-12"
5. Seleccionar conductor: "Juan Pérez"
6. Confirmar creación
7. Verificar que despacho tiene estado "creada"
8. Asignar 3 pedidos pendientes
9. Verificar que pedidos tienen estado "asignado"
10. Abrir planificador de ruta
11. Ordenar pedidos por cercanía
12. Guardar orden
13. Verificar campo "orden" actualizado en pedidos
14. Ir a "Despachos Inicio"
15. Seleccionar despacho creado
16. Ingresar km de salida: 75000
17. Confirmar inicio
18. Verificar estado "en_ruta" en despacho, vehículo y conductor
19. Marcar primer pedido como entregado
20. Verificar hora real de llegada registrada
21. Marcar segundo pedido como entregado
22. Marcar tercer pedido como entregado
23. Ir a "Despachos Cierre"
24. Seleccionar despacho
25. Ingresar km de llegada: 75150
26. Agregar observaciones: "Entrega exitosa"
27. Confirmar finalización

Resultado Esperado:
• Despacho con estado "finalizada"
• Distancia real: 150 km
• Duración calculada correctamente
• Vehículo y conductor en estado "disponible"
• Todos los pedidos con estado "entregada"
• Datos disponibles en reportes

Criterios de Aceptación:
• Todos los pasos se ejecutan sin errores
• Los datos se persisten correctamente
• Los estados se actualizan en todas las entidades relacionadas
• El tiempo total del flujo es menor a 5 minutos

11. Criterios de Aceptación

11.1 Criterios de Aceptación General

CategoríaCriterioMeta
FuncionalCasos de prueba críticos aprobados100%
FuncionalCasos de prueba de alta prioridad aprobados≥ 95%
FuncionalCasos de prueba de media prioridad aprobados≥ 90%
SeguridadVulnerabilidades críticas resueltas100%
SeguridadVulnerabilidades altas resueltas100%
RendimientoTiempo de respuesta promedio< 500 ms
RendimientoDisponibilidad≥ 99.5%
UsabilidadTareas completadas sin ayuda≥ 90%
CompatibilidadNavegadores soportadosChrome, Firefox, Edge, Safari

11.2 Criterios de Rechazo

⚠️ El sistema NO será aceptado si:

12. Entregables

12.1 Documentación de Pruebas

12.2 Métricas a Reportar

MétricaDescripción
Cobertura de Pruebas% de requerimientos cubiertos
Tasa de DefectosBugs encontrados por módulo
Severidad de DefectosDistribución por severidad
Tiempo de ResoluciónPromedio para corregir bugs
Tasa de Aprobación% de casos de prueba aprobados
RendimientoTiempos de respuesta medidos

12.3 Cronograma de Pruebas

FaseDuraciónActividades
Planificación2 díasDiseño de casos de prueba
Pruebas Funcionales5 díasEjecución de casos de prueba
Pruebas de Seguridad3 díasOWASP Top 10, pentesting básico
Pruebas de Rendimiento2 díasPruebas de carga
Pruebas de Integración2 díasValidación de integraciones
Pruebas de Regresión2 díasVerificación post-correcciones
Pruebas de Aceptación2 díasValidación con cliente
Reporte Final1 díaDocumentación de resultados
Total19 días
✅ Compromiso de Calidad:
El equipo de desarrollo se compromete a cumplir con todos los estándares de calidad definidos en este plan de pruebas. El sistema solo será liberado a producción cuando se cumplan todos los criterios de aceptación establecidos.