Sobes.tech
Middle

¿Cómo seleccionar las pruebas para realizar pruebas de regresión?

sobes.tech AI

Respuesta de la IA

Al seleccionar pruebas para las pruebas de regresión, me baso en los siguientes criterios:

  • Pruebas que cubren procesos comerciales críticos: Verifican las funciones principales de las que depende el funcionamiento del sistema.
  • Pruebas que cubren áreas con la mayor cantidad de cambios: Se enfocan en las partes del sistema afectadas por las últimas modificaciones o mejoras.
  • Pruebas que cubren áreas con alta frecuencia de defectos: Incluyen escenarios donde previamente se detectaron defectos.
  • Pruebas que cubren nuevas funcionalidades: Verifican la correcta operación de las nuevas capacidades y su integración con el sistema existente.
  • Pruebas que cubren la integración entre módulos: Aseguran que las diferentes partes del sistema interactúan correctamente.
  • Pruebas que cubren las partes más complejas y riesgosas del sistema: Se dirigen a las áreas más inestables, donde existe una alta probabilidad de problemas.
  • Pruebas automatizadas: Las pruebas automatizadas son la opción ideal para la regresión debido a su velocidad y fiabilidad.

Para una selección eficaz de pruebas, también utilizo:

  • Análisis de cambios en la base de código.
  • Datos sobre el historial de defectos y su localización.
  • Priorización de funcionalidades con la participación del equipo de producto.
  • Resultados de ejecuciones previas de pruebas de regresión.

Dependiendo del alcance de los cambios y los recursos disponibles, puedo optar por un conjunto completo de pruebas de regresión o por un subconjunto (regla de humo, sanidad). Al seleccionar un subconjunto, doy preferencia a las pruebas que cubren escenarios principales y de mayor riesgo.

Ejemplo de estructura de carpetas para pruebas de regresión (para automatizadas):

# tests/
#   regression/
#     critical_paths/
#       test_login.py
#       test_create_order.py
#     new_features/
#       test_new_payment_method.py
#     bug_fixes/
#       test_fixed_issue_123.py
#     integration/
#       test_order_payment_flow.py
#     smoke/
#       test_basic_ui_elements.py
#   ... otros tipos de pruebas