Descripción del proyecto
TraducidoEl objetivo es una etapa de canalización que ejecute pruebas unitarias, de integración y un subconjunto de pruebas de extremo a extremo en cada push y pull request. Debe producir un informe claro que muestre qué pasó, qué falló y por qué, publicar ese informe donde el equipo pueda verlo, y marcar la construcción en rojo para que un cambio roto no pueda ser fusionado o desplegado. También nos gustaría que las pruebas inestables se marcaran en lugar de ser reintentadas silenciosamente para siempre, y que el tiempo total de ejecución se mantenga razonable a través de la paralelización y el almacenamiento en caché.
Usamos un servicio de alojamiento Git común y un corredor CI estándar; por favor, indícanos con qué herramientas te sientes cómodo y cómo estructurarías las etapas. La documentación y una breve sesión de traspaso para nuestros ingenieros son parte del trabajo.
Lo que la configuración final debería entregar:
— ejecuciones de pruebas automáticas en cada commit y solicitud de fusión;
— informes de aprobaciones y fallos legibles con registros;
— lanzamiento bloqueado cuando las pruebas fallan;
— retroalimentación rápida a través de trabajos paralelos y almacenamiento en caché.