Verificando autenticación…

Saltar al contenido principal

Ambiente de Pruebas

La mejora continua se apoya fuertemente en nuestra capacidad para experimentar y probar nuevas ideas en entornos seguros y controlados. Nuestros ambientes de prueba están diseñados para facilitar la innovación y garantizar la calidad antes de que los cambios lleguen a producción.

Ambiente de Staging

El ambiente de Staging es una pieza clave en nuestro proceso de validación.

  • Propósito: Es un entorno de pre-producción que replica lo más fielmente posible el ambiente de producción. Su objetivo principal es realizar las pruebas finales de aceptación (UAT) y regresión.
  • Características:
    • Infraestructura Idéntica: Utiliza la misma configuración de infraestructura (versiones de servicios, configuraciones de red, etc.) que producción.
    • Datos Anónimos: Se puebla con un conjunto de datos realista pero anonimizado para permitir pruebas funcionales sin exponer información sensible.
    • Conexiones a Servicios Externos: Se conecta a las versiones de prueba (sandbox) de servicios de terceros.
  • Proceso de Uso:
    1. El equipo de desarrollo despliega una nueva versión candidata (release candidate) en Staging.
    2. El equipo de Q&A ejecuta el plan de pruebas de regresión y UAT.
    3. Los stakeholders del negocio pueden acceder a este entorno para validar las nuevas funcionalidades.
    4. Solo después de la aprobación en Staging, una versión puede ser programada para su despliegue en producción.

Pruebas de Rendimiento y Carga

Asegurar que nuestras aplicaciones puedan manejar la demanda de los usuarios es fundamental.

  • Propósito: Identificar cuellos de botella, medir los tiempos de respuesta y determinar la capacidad máxima del sistema bajo carga.
  • Entorno: Estas pruebas se realizan en un entorno dedicado y aislado, idéntico en especificaciones al de producción, para no afectar a otros ambientes.
  • Herramientas:
    • JMeter / Gatling: Para la generación de scripts que simulan el comportamiento de miles de usuarios.
    • K6: Una herramienta moderna para pruebas de carga, enfocada en la experiencia del desarrollador.
  • Proceso:
    1. Se definen los escenarios de prueba basados en los casos de uso más comunes y críticos.
    2. Se ejecutan las pruebas, aumentando gradualmente la carga para encontrar el punto de quiebre.
    3. Se analizan los resultados (tiempos de respuesta, tasa de errores, consumo de recursos) para identificar áreas de mejora.
    4. Se realizan optimizaciones en el código o la infraestructura y se repiten las pruebas hasta alcanzar los objetivos de rendimiento.

Ambientes de Feature (Features Environments)

Para acelerar el ciclo de feedback, utilizamos ambientes efímeros por cada nueva funcionalidad.

  • Propósito: Permitir a los desarrolladores, diseñadores y product owners probar una nueva funcionalidad de forma aislada, sin tener que esperar a que se integre en la rama principal de develop.
  • Cómo funciona:
    • Cuando se crea un Pull Request, nuestro sistema de CI/CD aprovisiona automáticamente un nuevo ambiente temporal con los cambios de esa rama.
    • Se genera una URL única para acceder a este ambiente.
    • Una vez que el Pull Request se fusiona o se cierra, el ambiente se destruye automáticamente para liberar recursos.
  • Beneficios: Facilita las revisiones y permite detectar problemas de manera temprana en el ciclo de desarrollo.