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.

Test in 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”.

Esempio di 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.

Test in parallelo

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.

  1. 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.
  2. 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.