🔒 Registro cerrado · Apertura oficial próximamente · Acceso exclusivo para alumnos activos
Iniciar SesiónPruebas de fallo deliberado en revisión
5 tareas · 35 min · Principiante
Las pruebas habituales demuestran que la aplicación funciona cuando todo funciona. Los hallazgos de este módulo aparecen justo cuando algo falla, y solo una prueba que provoca esa falla a propósito, en un entorno de pruebas, los atrapa antes de producción. Droguería Siemprevida tiene todas sus pruebas en verde y aun así tuvo fallos abiertos y cobros sin pedido. Te entrega su matriz de fallos, dos archivos de pruebas, la última corrida de la integración continua y la lista que usa para revisar cambios.
Objetivo de la sala
Las pruebas habituales demuestran que la aplicación funciona cuando todo funciona. Los hallazgos de este módulo aparecen justo cuando algo falla, y solo una prueba que provoca esa falla a propósito, en un entorno de pruebas, los atrapa antes de producción. Droguería Siemprevida tiene todas sus pruebas en verde y aun así tuvo fallos abiertos y cobros sin pedido. Te entrega su matriz de fallos, dos archivos de pruebas, la última corrida de la integración continua y la lista que usa para revisar cambios.Una prueba de fallo simula que una dependencia hace lo que hacen las dependencias de verdad: no responde, devuelve un error del servidor, devuelve algo que no se puede leer o tarda demasiado. Después comprueba tres cosas: que el control sigue cerrado, que no quedó ningún dato a medias y que la respuesta al cliente no enseña nada interno. En Laravel, Http::fake permite fijar la respuesta de cada servicio, con el código que haga falta, y Http::failedConnection() simula que la conexión no se pudo hacer; Http::preventStrayRequests() hace fallar cualquier petición que no se haya simulado, para que una prueba nunca toque un servicio real.
Provocar fallas en un entorno compartido, como una caída real de un servicio en preproducción, es otra cosa: se hace con autorización, con un plan y con quien opera el entorno avisado. En producción, nunca sin una aprobación explícita.
Responde para continuar
Una prueba simula que el validador de fórmulas no responde. ¿Qué debería comprobar?
Ver pista de ayuda
Las tres comprobaciones del párrafo: control, datos y respuesta.
Abre el laboratorio y lee matriz-de-fallos.txt. Cada fila es una dependencia y cada columna un modo de fallar. Una fila llena de huecos es una dependencia cuyo comportamiento ante la falla nadie conoce hasta que ocurre en producción. Cruza el resultado con lo que viste en la sala de transacciones: el paso que más daño hizo es justamente el que no tiene pruebas.
Responde para continuar
¿Qué dependencia no tiene ninguna prueba que simule uno de sus fallos? Escríbela tal como aparece en la matriz.
Ver pista de ayuda
Busca la fila que no tiene ningún si.
Una prueba que comprueba el comportamiento equivocado es peor que no tener prueba: convierte el defecto en requisito. Quien corrija el fallo verá esa prueba romperse y puede creer que el arreglo es lo que está mal. La matriz marca una casilla como cubierta con un asterisco; lee VerificadorFormulaTest.php y compara lo que afirma cada prueba con lo que debería pasar.
Responde para continuar
¿Qué prueba pasa en verde precisamente porque comprueba el fallo abierto? Escribe su nombre completo.
Ver pista de ayuda
Busca la prueba que simula la caída y afirma que el pedido puede salir.
Para el informe conviene una cifra que el equipo pueda seguir de una revisión a la siguiente. Cuenta las casillas de la matriz marcadas como sin prueba, en todas las dependencias.
Responde para continuar
¿Cuántas casillas de la matriz están marcadas como sin prueba?
Ver pista de ayuda
Cuenta los no fila por fila; la casilla con asterisco está marcada como si.
Las pruebas de ConfirmarPedidoFallosTest.php cubren bien la pasarela, pero todas simulan fallas que ocurren antes de que exista un cobro. El daño real vino de una falla posterior. En la revisión de un cambio, la pregunta que lo habría encontrado no está en la lista del equipo: para cada dependencia que toca el cambio, qué pasa si falla y en qué estado quedan los datos.
Responde para continuar
¿Qué prueba habría detectado los cobros sin pedido antes de producción?
Ver pista de ayuda
La falla tiene que ocurrir después del paso que no se puede deshacer.
Whoami-Labs Pro
Whoami-Labs Pro utiliza cookies
Utilizamos cookies y almacenamiento local para el funcionamiento del sitio, seguridad de sesión y, si lo autorizas, analítica y marketing. Puedes aceptar, rechazar o personalizar. Política de Privacidad
Preferencias
Configuraciones de cookies
Elige qué categorías permitir. Las esenciales siempre están activas. Consulta la Política de Privacidad.
Esenciales
Siempre activas · sesión, CSRF, tema y esta preferencia
Necesarias para iniciar sesión, proteger formularios (CSRF) y recordar tu elección de cookies y tema. Sin ellas la plataforma no funciona de forma segura.
Analíticos
Hoy no activos en la plataforma; listos para cuando se conecten
Nos ayudan a entender uso de cursos y páginas. Si los activas, se usarán cuando conectemos analítica; hasta entonces no se carga ningún tracker.
Marketing
Hoy no activos; campañas futuras solo con tu permiso
Comunicaciones o campañas. No activos hoy en la plataforma; quedarán listos si los conectamos y solo si los permites.