( Si noti che questa domanda è collegata a questo: In che modo la consegna continua funziona in pratica? - ma richiede una domanda più specifica su tempo e stabilità ).
CI / CD , nessun QA manuale , super-veloci sono le nuove parole d'ordine e ho letto su questo argomento molte volte, ma suona in qualche modo non realistico per i casi in cui i test automatici sono difficili da estrarre. Immagina un complesso software basato sull'interfaccia utente come un software di editing video. O uno che ha un backend enorme, un frontend enorme con setup di account complessi, diversi tipi di autenticazione, ecc. Ecc. O se le animazioni sono una parte enorme del tuo progetto frontend.
Per queste grandi applicazioni i test possono durare ore ( per darti una prospettiva: in uno dei nostri progetti sono stati eseguiti test dell'interfaccia utente completi per 16 ore su una sola piattaforma, coprendo solo il 50% di casi di test manuali ); anche i test dell'interfaccia utente sono notoriamente fragili (anche con un investimento molto pesante sulla loro stabilizzazione) e non si desidera assolutamente che il proprio rilascio venga ripristinato dopo 15 ore a causa di un bug casuale non riproducibile del test dell'interfaccia utente.
Quindi, la domanda è: quanto dovrebbe essere breve e stabile il build / test per poter estrarre una pipeline funzionante di CI / CD?