Al momento disponiamo di 4 ambienti per un progetto (local / dev, test, accettazione, produzione). Abbiamo creato alcuni test di integrazione che vogliono essere eseguiti. La grande domanda che ora abbiamo è dove eseguirli?
-
Eseguili su tutti gli ambienti. Il pro di questo è che sappiamo per certo che funziona su tutti gli ambienti. Gli svantaggi sono che a) non si desidera sottolineare il proprio ambiente di produzione con i test, b) Non tutti i test possono essere preformati in produzione a partire dai riferimenti esterni di terze parti anche di produzione
-
Eseguili su un singolo ambiente. Quindi scegli uno dei quattro. Il problema con questo è che le impostazioni specifiche dell'ambiente (database, config) possono causare bug. Quindi se esegui test corretti sul bug dell'ambiente di test a causa di un bug di configurazione in produzione si rompe.
-
Crea un ambiente di produzione al volo sovrascrivi solo le impostazioni di cui hai realmente bisogno per il test ed esegui i tuoi test su quelle. I pro di questo approccio sono che per la produzione si filtrano il più possibile i bug di impostazioni specifiche dell'ambiente. Possono ancora verificarsi nell'altro ambiente, ma le conseguenze sono minori. Gli aspetti negativi sono che questo approccio richiede un po 'di tempo per essere configurato, può essere saltato minimizzando le differenze tra gli ambienti.
Mi chiedo, c'è uno standard per questo? Cosa sarebbe normalmente fatto?