QA y Calidad de Software

Testing basado en riesgo: cómo priorizar casos de prueba y regresión

Aprende a priorizar casos de prueba según el impacto y la probabilidad de fallo, identificar flujos críticos y diseñar una estrategia de regresión útil.

Testing basado en riesgo: cómo priorizar casos de prueba y regresión

Un equipo de QA recibe una nueva versión de una aplicación B2C pocas horas antes de publicarla. Hay cientos de casos de prueba disponibles, pero el tiempo solo permite ejecutar una parte. ¿Conviene probar primero un cambio visual menor, el inicio de sesión o el flujo de pago?

La respuesta no debería depender únicamente de qué casos están documentados o cuáles son más fáciles de ejecutar. El testing basado en riesgo ayuda a decidir qué probar primero considerando el impacto de un fallo, la probabilidad de que ocurra y la capacidad de detectarlo antes de que llegue a producción.

Este enfoque permite construir una regresión más útil, especialmente cuando existen cambios frecuentes, múltiples integraciones o recursos limitados. No busca probar menos sin criterio, sino proteger primero los recorridos que más pueden afectar al negocio y a las personas usuarias.

Qué es el testing basado en riesgo y qué problema resuelve

El testing basado en riesgo es una estrategia para priorizar actividades de prueba según los riesgos asociados al producto, al cambio realizado y al contexto de la entrega.

En lugar de asignar el mismo esfuerzo a todos los casos, el equipo analiza preguntas como:

  • ¿Qué ocurre si este flujo falla?
  • ¿Cuántas personas usuarias podrían verse afectadas?
  • ¿Se procesan pagos o datos sensibles?
  • ¿El cambio modifica una regla de negocio importante?
  • ¿Qué componentes o integraciones dependen de esta funcionalidad?
  • ¿El área fue modificada recientemente o tiene un historial de defectos?

Un error en el color de un botón puede ser incómodo, pero un error que confirme un pedido sin registrar correctamente el pago tiene consecuencias muy diferentes. Ambos problemas merecen atención, aunque no necesariamente la misma prioridad ni profundidad de pruebas.

Este enfoque es especialmente útil cuando:

  • El producto tiene muchos casos de prueba y poco tiempo para ejecutarlos.
  • Se realizan entregas frecuentes.
  • Existen integraciones con proveedores externos.
  • La aplicación maneja pagos, información personal o permisos.
  • El equipo necesita definir una regresión mínima para cada release.
  • La cobertura automatizada todavía es parcial.

Cómo identificar el riesgo de una funcionalidad

La prioridad no debería asignarse por intuición individual. Un análisis simple y compartido ayuda a que QA, producto, desarrollo y negocio tengan una conversación concreta sobre el impacto de cada área.

Impacto si el flujo falla

El impacto representa la gravedad de las consecuencias. Puede evaluarse con una escala simple, por ejemplo de bajo a alto:

  • Bajo: el problema afecta la presentación o una función secundaria y existe una alternativa sencilla.
  • Medio: se bloquea una parte de la experiencia, pero el proceso puede continuar por otro camino.
  • Alto: se interrumpe una operación principal, se genera información incorrecta o se afecta a muchas personas.
  • Crítico: puede producir pérdidas económicas, exposición de datos, incumplimiento de reglas de negocio o imposibilidad de utilizar el producto.

Por ejemplo, en una aplicación de comercio electrónico, la búsqueda de productos puede tener un impacto medio si falla porque todavía existe navegación por categorías. En cambio, un error en la confirmación del pago puede tener un impacto alto o crítico.

Probabilidad de que ocurra un fallo

La probabilidad considera qué tan expuesta está la funcionalidad a errores. No es una predicción exacta, sino una estimación basada en señales disponibles:

  • La funcionalidad fue modificada recientemente.
  • El cambio toca código complejo o poco conocido.
  • Se actualizaron dependencias o configuraciones.
  • Intervienen varios servicios o proveedores externos.
  • La funcionalidad tuvo defectos anteriormente.
  • Existen muchas combinaciones de datos, roles o dispositivos.
  • El comportamiento depende de condiciones de red, concurrencia o reintentos.

Un flujo estable y aislado puede tener una probabilidad menor de fallo que una integración recientemente modificada con un proveedor de pagos, aunque ambos sean importantes para el producto.

Detectabilidad y exposición

También conviene preguntar si el fallo sería visible rápidamente. Un error que produce una pantalla de error puede detectarse antes que uno que guarda datos incorrectos silenciosamente.

Además, la exposición importa: un defecto que afecta a todas las personas usuarias merece más prioridad que uno limitado a una combinación poco frecuente, aunque esta distinción debe validarse con información del producto y no asumirse sin evidencia.

De la evaluación del riesgo a la prioridad de las pruebas

Una forma práctica de comenzar es combinar impacto y probabilidad. No es necesario construir un modelo matemático sofisticado. Una matriz cualitativa puede ser suficiente para organizar la decisión.

  • Alto impacto y alta probabilidad: prioridad inmediata. Requiere pruebas profundas y regresión frecuente.
  • Alto impacto y baja probabilidad: debe estar cubierto, aunque la estrategia puede enfocarse en escenarios críticos y condiciones de error.
  • Bajo impacto y alta probabilidad: conviene probarlo si genera mucho ruido, soporte o degradación de la experiencia.
  • Bajo impacto y baja probabilidad: puede quedar para una etapa posterior o para una regresión más amplia.

Por ejemplo, imaginemos una aplicación con estos flujos:

  • Inicio de sesión: alto impacto, porque bloquea el acceso; probabilidad media si se modificó la autenticación.
  • Agregar un producto al carrito: alto impacto para la conversión; probabilidad media por cambios en inventario o precios.
  • Aplicar un cupón: impacto medio o alto, según su importancia comercial; probabilidad alta si cambió la lógica de promociones.
  • Confirmar el pago: impacto crítico y probabilidad media o alta si se modificó la integración.
  • Ordenar visualmente un listado: impacto bajo; prioridad menor si no afecta la selección ni la compra.

La priorización no significa ignorar permanentemente los casos de riesgo bajo. Significa ordenar el trabajo para que una ejecución parcial siga protegiendo las capacidades más importantes.

Cómo convertir el análisis en una estrategia de regresión

Una regresión efectiva no es necesariamente una lista fija que se ejecuta de principio a fin en cada entrega. Puede organizarse por niveles, de acuerdo con el riesgo y el alcance del cambio.

Regresión crítica o smoke test

Debe cubrir los recorridos mínimos que indican si la aplicación está disponible para pruebas posteriores. Puede incluir:

  • Acceso con una cuenta válida.
  • Navegación hacia la funcionalidad principal.
  • Creación o actualización de la operación central del producto.
  • Persistencia correcta de los datos.
  • Respuesta básica de integraciones indispensables.

En una aplicación B2C, este conjunto podría recorrer desde el inicio de sesión hasta la selección de un producto y la creación de un pedido en un entorno controlado. Si falla un paso esencial, ejecutar decenas de casos secundarios puede aportar poco valor en ese momento.

Regresión dirigida por el cambio

Después del conjunto crítico, se prueban las áreas directamente modificadas y sus dependencias. Si se cambia el cálculo del total de una compra, no basta con probar solo el nuevo campo. También conviene revisar descuentos, impuestos cuando correspondan, persistencia del pedido, confirmaciones y comunicación con los servicios relacionados.

El alcance debe seguir el flujo de datos y dependencias, no únicamente el nombre del ticket. Un cambio descrito como “actualizar la pantalla de checkout” podría afectar validaciones, cálculo de importes, inventario o eventos publicados hacia otros componentes.

Regresión amplia

Incluye escenarios menos frecuentes, combinaciones adicionales y funcionalidades con riesgo medio o bajo. Es apropiada cuando:

  • La entrega incluye cambios transversales.
  • Se actualizan componentes compartidos.
  • Se prepara una versión importante.
  • Se corrigieron defectos complejos.
  • Existe tiempo suficiente para explorar áreas no cubiertas en ejecuciones anteriores.

La regresión amplia no debería convertirse en una colección de casos que nadie revisa. Si una prueba ya no representa el comportamiento esperado o nunca aporta información, conviene actualizarla, dividirla o retirarla.

Qué factores deben incluirse además del flujo principal

Probar el camino feliz es necesario, pero no suficiente para evaluar el riesgo. Las consecuencias más relevantes suelen aparecer en condiciones alternativas o de error.

Datos sensibles y permisos

Las funcionalidades que manejan información personal, credenciales, direcciones, documentos o datos de pago requieren una prioridad elevada. La prueba debe considerar también roles y permisos: no solo si una persona autorizada puede realizar una acción, sino si una persona no autorizada queda correctamente bloqueada.

Integraciones externas

Una aplicación puede comportarse correctamente en aislamiento y fallar al comunicarse con un proveedor de pagos, un servicio de identidad, una plataforma de correo o una API de terceros. En estos casos es importante revisar:

  • Respuestas exitosas y rechazadas.
  • Timeouts y errores de red.
  • Reintentos y posibles duplicaciones.
  • Mensajes mostrados a la persona usuaria.
  • Consistencia de los datos cuando una parte del proceso falla.

En sistemas distribuidos, una prueba de integración no debería limitarse a confirmar que la respuesta tiene el código esperado. También debe verificar qué estado queda persistido cuando los servicios no responden de forma ideal.

Cambios recientes y componentes compartidos

Un cambio pequeño en un componente utilizado por varias pantallas puede tener un alcance mayor que una funcionalidad nueva y aislada. Por eso, el análisis debe revisar dependencias, contratos entre servicios, migraciones de base de datos y configuraciones modificadas.

Escenarios negativos y recuperación

Los casos de prueba de mayor riesgo suelen incluir datos inválidos, operaciones repetidas, sesiones expiradas, cancelaciones, permisos insuficientes y fallos durante pasos intermedios. También es importante comprobar si la aplicación permite recuperarse sin duplicar una operación ni perder información válida.

Errores frecuentes al aplicar testing basado en riesgo

Confundir prioridad con importancia absoluta

Una funcionalidad puede ser importante para el negocio, pero tener bajo riesgo en una entrega concreta si no fue modificada y cuenta con cobertura estable. La prioridad debe considerar el contexto del cambio, no solo la relevancia general del módulo.

Priorizar únicamente lo que cambió

Probar solo el código modificado puede omitir regresiones en integraciones, contratos o componentes compartidos. La pregunta correcta es: ¿qué áreas pueden verse afectadas por este cambio?

Usar una matriz sin validar el contexto

Una clasificación de bajo, medio o alto riesgo es una herramienta de conversación, no una verdad automática. Producto puede conocer consecuencias comerciales que QA no tiene visibles, mientras que QA puede identificar combinaciones técnicas que el equipo de negocio desconoce.

Medir el avance por cantidad de casos ejecutados

Ejecutar muchos casos no demuestra que se hayan cubierto los riesgos importantes. Es más útil conocer qué recorridos críticos fueron validados, qué riesgos permanecen abiertos y qué condiciones no pudieron probarse.

Dejar la priorización para el final

Si el análisis ocurre cuando la versión ya está lista para publicar, el equipo tendrá menos opciones. Identificar riesgos durante el refinamiento permite mejorar criterios de aceptación, preparar datos, definir ambientes y automatizar los escenarios adecuados.

Un proceso práctico para aplicar este enfoque en el equipo

El testing basado en riesgo puede incorporarse al trabajo diario sin reemplazar las técnicas existentes. Un proceso inicial puede seguir estos pasos:

  1. Mapear los recorridos principales: identificar qué acciones permiten registrarse, comprar, pagar, administrar una cuenta o completar el objetivo central del producto.
  2. Relacionar cada recorrido con sus dependencias: incluir bases de datos, APIs, servicios externos, eventos, roles y reglas de negocio.
  3. Asignar impacto y probabilidad: utilizar una escala breve y justificar la clasificación con información observable.
  4. Revisar el alcance del cambio: analizar qué módulos, contratos y datos pueden verse afectados directa o indirectamente.
  5. Definir la regresión por niveles: separar pruebas críticas, dirigidas por cambio y amplias.
  6. Ejecutar primero los riesgos más altos: si el tiempo se reduce, la evidencia más importante ya debería estar disponible.
  7. Registrar riesgos residuales: documentar qué no se probó, qué limitaciones existieron y qué decisión se tomó sobre la entrega.
  8. Revisar la estrategia después de la entrega: los defectos encontrados y los cambios del producto deben actualizar la priorización futura.

Para una persona que se prepara para una entrevista de QA, explicar este proceso demuestra criterio más allá de conocer herramientas. Una respuesta sólida no se limita a mencionar pruebas funcionales o regresión: conecta la selección de casos con el impacto del negocio, los cambios técnicos y las consecuencias de un fallo.

Conclusión: probar primero lo que más puede doler

El testing basado en riesgo ayuda a tomar decisiones realistas cuando no es posible cubrir todo con la misma profundidad. Su valor está en relacionar los casos de prueba con el impacto, la probabilidad, las dependencias, los datos sensibles y el alcance real de cada cambio.

Una buena estrategia de regresión protege primero los recorridos críticos, amplía la cobertura según el riesgo y deja visibles las áreas que todavía requieren validación. No reemplaza el criterio de QA ni elimina la necesidad de probar; proporciona una forma más clara de decidir dónde concentrar el esfuerzo.

Antes de agregar más casos de prueba, identifica qué fallos causarían mayor impacto y protege primero esos recorridos. Ese cambio de perspectiva permite construir mejores regresiones y desarrollar un pensamiento de QA aplicable a proyectos reales, equipos de producto y entrevistas técnicas.

Siguiente paso

Formación en QA

Si el siguiente paso es aprender el oficio, el curso de QA Tester es la formación. La mentoría de inserción es otra oferta, para quien ya busca empleo.

Crear cuenta

Recibe recursos puntuales por correo (paso opcional).

Whatsapp Mentores Tech