Cos'è il test parallelo? Definizione, approccio, esempio
Test in parallelo
Test in parallelo è un tipo di test software in cui più versioni o sottocomponenti di un'applicazione vengono testate con lo stesso input su sistemi diversi contemporaneamente per ridurre il tempo di esecuzione del test. Lo scopo del test parallelo è scoprire se la versione legacy e la nuova versione si comportano allo stesso modo o in modo diverso e garantire se la nuova versione è più efficiente o meno.
L'immagine seguente mostra il test parallelo.
Esempio di test parallelo
Quando un'organizzazione si sposta da un vecchio sistema a un nuovo sistema, i dati legacy sono una parte importante. Trasferire questi dati è un processo complesso.
Nei test del software, la verifica della compatibilità del sistema appena sviluppato con il vecchio sistema viene eseguita tramite “test parallelo”.
Perché eseguire test paralleli
Il test parallelo viene eseguito per i seguenti motivi:
- Per assicurarsi che la nuova versione dell'applicazione funzioni correttamente
- Per assicurarsi che le consistenze siano le stesse tra la nuova e la vecchia versione
- Per verificare se il formato dei dati tra due versioni è cambiato
- Per verificare l'integrità della nuova applicazione
Ad esempio, attualmente gli utenti utilizzano la versione 1.0 di un'applicazione e dal mese di marzo gli utenti utilizzeranno un'altra versione di un'applicazione, diciamo la versione 1.1.
In questi casi, i tester devono eseguire test paralleli per valutare che la migrazione dei dati venga eseguita con successo. Anche per verificare se le modifiche nella nuova versione non influiscono sul funzionamento del sistema. Il tester deve verificare che le modifiche vengano eseguite correttamente e che l'utente ottenga l'output desiderato secondo i requisiti.
Quando eseguire i test paralleli
I test paralleli possono essere ampiamente utilizzati quando
- L’azienda passa dal vecchio sistema al nuovo sistema
- Quando la sincronizzazione viene eseguita su due sistemi
- Dati legacy importati da un sistema a un altro
- Tutti i risultati dovrebbero essere definiti in modo più preciso. Esempio: settore finanziario o settore assicurativo in cui il calcolo costituisce una delle funzionalità principali del sistema.
Come eseguire test paralleli: approccio completo
Per eseguire test paralleli, è possibile creare semplicemente diversi progetti che testeranno una parte diversa dell'applicazione (progetti slave) e un progetto (progetto principale) che eseguirà questi progetti.
Il test parallelo prevede due criteri di livello.
- Criteri di ammissione al test paralleloI criteri di accesso ai test paralleli definiscono le attività che devono essere soddisfatte prima che i test paralleli possano essere eseguiti in modo efficiente.
- Criteri di uscita dal test paralleloI criteri di uscita dal test parallelo definiscono la conclusione positiva della fase di test parallelo.
Prima di eseguire i test paralleli, è necessario soddisfare alcune precondizioni.
- Il test parallelo non può iniziare finché non viene completata la configurazione dell'ambiente.
- Tutte le precondizioni e gli scenari dovrebbero essere definiti per primi
- La migrazione dei dati legacy e dei nuovi dati deve essere eseguita correttamente
- Il test parallelo non è completo finché tutti i criteri di uscita non sono stati soddisfatti
Per eseguire il test parallelo, è necessario seguire i seguenti passaggi
Passo 1 : esegue il vecchio sistema contro il nuovo sistema sviluppato
Passo 2 : Comprendere le differenze tra i due sistemi
Passo 3 : Avvia il ciclo completo utilizzando lo stesso input
Passo 4 : Misurare l'output del sistema appena sviluppato rispetto al vecchio sistema
Passo 5 : segnala la causa del bug, se trovato
Buone pratiche per i test paralleli
Per eseguire test paralleli ecco alcuni suggerimenti e trucchi che potrebbero essere utili.
- Bug tipici identificati nei test paralleli
La logica interna è cambiata
Il flusso del prodotto è cambiato
I principali funzionalisti vengono modificati
- Quanti cicli dovrebbero essere necessari
Il numero di cicli di prova dipende dalla complessità del modulo.
Esegui più cicli di scenari utilizzando dati di test predefiniti, trasmessi dal sistema precedente
- Differenza di categorizzazioneQuando eseguiamo il ciclo di test parallelo, i risultati sia del nuovo sistema che di quelli preesistenti dovrebbero essere misurati linea per linea evidenziando le differenze. Ogni differenza che abbiamo catturato dovrebbe essere definita in base al tipo di errore.
- Tipo di errore verificatosi durante i cicliPer evitare errori, il tester dovrebbe annotare le seguenti cose mentre esegue test paralleli.
- Errore di immissione
- Errore dovuto al vecchio sistema
- Differenza spiegabile o accettabile
- Errore inaspettato
Cosa non è un test parallelo
Si tratta di test paralleli | Non è un test parallelo |
---|---|
Testare l'applicazione aggiornata rispetto all'applicazione precedente. | Testare un solo software. |
Esegui il vecchio scenario con il nuovo software con condizioni di input riservate. | Test multibrowser o multipiattaforma. |
Lo scopo è quello di scoprire il risultato secondo il sistema precedente. | Lo scopo è scoprire il problema della progettazione. |
Dovrebbe avere conoscenza del sistema vecchio e di quello recentemente sviluppato. | Conoscere la differenza non è obbligatorio. |
Sfide dei test paralleli
- È richiesta la conoscenza completa del prodotto.
- Ogni risultato dovrebbe essere testato
- Necessità di concentrarsi sull'immissione dei dati e sul flusso del prodotto
Sommario
- In Software Engineering, Il test parallelo consiste nel testare più applicazioni o sottocomponenti di un'applicazione contemporaneamente per ridurre i tempi di test.
- Garantisce che il nuovo sistema sia sufficientemente capace per eseguire il software in modo efficiente.