La pirámide dice que tengas muchos tests unitarios rápidos, menos tests de integración y un número pequeño de tests de extremo a extremo, porque el coste y la inestabilidad suben según subes de nivel mientras que la velocidad del feedback baja. Sigue siendo válida como modelo de costes. Lo que ha cambiado es que con servicios distribuidos la capa intermedia importa más, así que los tests de contrato y de integración suelen merecer un peso mayor del que sugiere la forma clásica.
Por qué lo preguntan los entrevistadores
Es una pregunta de estrategia, y el entrevistador quiere saber si sabes razonar sobre el reparto de tests en vez de recitar un diagrama. Una buena respuesta explica por qué existe esa forma (coste, velocidad y fiabilidad, no dogma) y demuestra que tienes una opinión sobre dónde se dobla. Quien defiende porcentajes rígidos normalmente no ha mantenido una suite grande a través de un rediseño.
Cómo estructurar tu respuesta
- Describe cada capa y su cantidad relativa.
- Explica el razonamiento de coste y velocidad detrás de la forma.
- Di dónde se dobla la forma con las arquitecturas modernas.
- Da tu propia regla para decidir a qué capa pertenece un test.
Ejemplo de respuesta
La forma viene de la economía. Un test unitario corre en milisegundos, falla por exactamente un motivo y casi nunca te miente. Un test de extremo a extremo corre en minutos, depende de un navegador, de la red y de seis servicios, y cuando se pone en rojo te pasas veinte minutos averiguando si lo que está roto es el producto o el entorno. Así que quieres muchos de los baratos y solo los caros que hagan falta para demostrar que las piezas están conectadas. Donde he visto doblarse la forma clásica es en sistemas distribuidos. Si un servicio es sobre todo orquestación, testearlo mucho a nivel unitario solo testea tus propios mocks, así que empujo peso hacia los tests de integración y de contrato, lo que da una forma más parecida a un diamante. Mi regla para colocar un test es preguntarme cuál es la cosa más pequeña que podría romper este comportamiento, y testear a ese nivel. Si el riesgo es un cálculo, unitario. Si el riesgo es que dos servicios no se pongan de acuerdo sobre un payload, contrato. Reservo el extremo a extremo para un puñado de recorridos que nunca deben romperse en silencio.
¿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
- ¿Cuántos tests de extremo a extremo te parecerían demasiados?
- ¿Qué es el antipatrón del cono de helado y cómo acaba un equipo ahí?
- ¿Dónde encajan los tests de contrato en ese modelo?
Más preguntas para Ingeniero de QA
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