Passa al contenuto principale

Ho scritto le seguenti osservazioni sulla conduzione di efficaci test di pre-produzione per la mia rubrica "VOS Corner" nella newsletter del gruppo di utenti Stratus per il dicembre 1996. Sono ancora attuali, quasi 13 anni dopo.

Se potessi dare un solo suggerimento ai nostri clienti (una sola richiesta!), sarebbe quello di essere sicuri di effettuare un test di stress delle nuove versioni della vostra applicazione prima di metterle in produzione. Recentemente sono stato coinvolto in una serie di situazioni in cui il cliente ha utilizzato un'applicazione che ha superato tutti i test funzionali, ma non è riuscita subito dopo essere stata messa in produzione perché non era in grado di gestire il carico di produzione.
Come sono certo capirete, il software può essere imprevedibile e difficile da testare. Sapere che un programma funziona a 10 transazioni al secondo non è la stessa cosa che sapere che funziona a 100 transazioni al secondo. Sapere che funziona con 10 circuiti virtuali non è lo stesso che sapere che funziona con 1000 circuiti virtuali. In ogni caso che ho visto, il programma ha funzionato bene in laboratorio o nell'ambiente di test, ma ha fallito miseramente nella produzione a causa di qualche difetto del software sottostante o del limite di capacità. In genere, se vengo coinvolto, il limite era all'interno di VOS, non l'applicazione, ma non importa dove si trova, l'effetto è lo stesso sui vostri clienti. Se volete sapere se la vostra applicazione funzionerà in produzione, dovete testarla come se fosse in produzione.
Ho ascoltato molte scuse nel corso degli anni perché non si può testare il proprio software agli stessi limiti della produzione. Non credo a nessuna di queste. È possibile catturare il flusso di dati di produzione e i file da utilizzare nei test. Si possono allestire generatori di test sintetici per simulare input buoni e cattivi. È possibile bypassare il codice dell'interfaccia sensibile al dispositivo per alimentare i flussi di dati ad alta velocità ai server. Ci sono molti trucchi che si possono usare per far sì che il 90% della vostra applicazione funzioni a pieno regime, anche se non si riesce a farla funzionare al 100% in modalità test. Smettete di pensare al problema come a una simulazione della produzione e iniziate a pensare che si tratti semplicemente di ottenere il maggior numero possibile di codice da eseguire, il più velocemente possibile. Assicuratevi di portare il vostro sistema al 100% di utilizzo della CPU; è qui che i problemi "interessanti" tendono ad emergere.
Esercitando il vostro software applicativo fino ai suoi limiti, esercitate anche VOS. Troverete problemi di capacità nel vostro laboratorio, non nella produzione. Saprete cosa e dove sono i vostri limiti di capacità. Uscirete dalla fase di test con un grado di fiducia molto più elevato che la vostra applicazione avrà successo. Mantieni il tuo capo e i tuoi clienti contenti. Non sono queste buone ragioni?

© 2024 Stratus Technologies.