Pondérala por riesgo en vez de por el dogma de la pirámide. Pruebas unitarias para lógica pura y casos límite, una capa sólida de pruebas de integración contra una base de datos real en un contenedor, y un número pequeño de pruebas de punta a punta que cubran los flujos que cuestan dinero si se rompen, como registro, pago e inicio de sesión. Simula a los terceros en la frontera de red en vez de sustituir tus propios módulos.
Por qué lo preguntan los entrevistadores
El entrevistador quiere saber si tus pruebas cazarían bugs reales o solo inflan un número de cobertura. Escuchan pruebas de integración contra una base de datos real, porque simular el ORM es la forma más común de que un equipo escriba pruebas que pasan mientras producción se rompe. También quieren oír cómo gestionas las pruebas de punta a punta inestables, ya que eso es lo que de verdad mata una suite con el tiempo.
Cómo estructurar tu respuesta
- Enuncia el principio: prueba donde está el riesgo.
- Describe cada capa y de qué es responsable.
- Explica dónde trazas la frontera de las simulaciones.
- Di cómo mantienes la suite rápida y fiable.
Ejemplo de respuesta
Mi regla guía es que una prueba merece la pena si habría cazado un bug que plausiblemente entregaríamos. La lógica pura, reglas de precios, manejo de fechas, comprobaciones de permisos, lleva pruebas unitarias rápidas con los casos límite desagradables. La capa en la que más invierto es la de integración: petición HTTP real contra la aplicación, Postgres real en un contenedor, migraciones reales, y afirmo sobre la respuesta y las filas resultantes. Eso caza lo que las simulaciones esconden, como una violación de restricción o una consulta que devuelve nada en silencio. A los terceros los simulo en la frontera de red con algo como MSW o una grabación fija, nunca sustituyendo mi propia clase de servicio, porque entonces estaría probando la simulación. La de punta a punta la mantengo deliberadamente pequeña, quizá ocho recorridos que cubren registro, inicio de sesión, pago y el flujo principal, ejecutándose en cada merge. Con la inestabilidad soy implacable; una prueba que falla al azar entrena a la gente a relanzar el pipeline, así que la arreglo o la borro en un día. La cobertura la miro como diagnóstico, nunca como objetivo.
¿Tienes esta entrevista a la vuelta de la esquina? GhostPilot escucha tu llamada en vivo, detecta la pregunta en cuanto la hacen y pone una respuesta estructurada en tu pantalla en tiempo real. Pruébalo en tu próxima entrevista de práctica, o coge un Session Pass de $29, sin suscripción, para la de verdad.
Mira cómo funcionaPreguntas de seguimiento que puedes esperar
- ¿Cómo preparas y limpias los datos de prueba entre ejecuciones?
- ¿Qué haces cuando una prueba de punta a punta es inestable?
- ¿Cómo pruebas un componente de React que obtiene datos?
Más preguntas para Desarrollador full stack
Tu entrevistador hará su propia versión de esta. Pega la descripción real del puesto en el Question Predictor gratuito y obtén las 20 preguntas que ese puesto tiene más probabilidades de hacerte, con lo que cada una busca en realidad.
Predecir mis preguntas