Descrizione del progetto
TradottoL'obiettivo è una fase del pipeline che esegue test unitari, di integrazione e un sottoinsieme di test end-to-end ad ogni push e pull request. Dovrebbe produrre un report chiaro che mostri cosa è passato, cosa è fallito e perché, pubblicare quel report dove il team può vederlo, e contrassegnare il build in rosso in modo che una modifica rotta non possa essere unita o distribuita. Vorremmo anche che i test instabili fossero segnalati piuttosto che ripetuti silenziosamente per sempre, e che il tempo totale di esecuzione fosse mantenuto ragionevole attraverso la parallelizzazione e la memorizzazione nella cache.
Utilizziamo un comune servizio di hosting Git e un runner CI standard; per favore dicci quali strumenti ti senti a tuo agio ad usare e come struttureresti le fasi. La documentazione e una breve sessione di passaggio per i nostri ingegneri fanno parte del lavoro.
Cosa dovrebbe fornire la configurazione finale:
— esecuzioni di test automatiche ad ogni commit e richiesta di merge;
— report di passaggio e fallimento leggibili con log;
— release bloccata quando i test falliscono;
— feedback rapido attraverso lavori paralleli e memorizzazione nella cache.