Va bene …. quindi questo mi sta facendo impazzire perché sto cercando di incoraggiare il team a scrivere più test eppure eccomi qui incapace di determinare se il seguente esempio è considerato unintegrazione o un test case funzionale.

Considera quanto segue:

Abbiamo una semplice applicazione web che instrada / espone una serie di feed JSON . Ogni richiesta utente richiede che la nostra applicazione interroghi un servizio esterno tramite HTTP (sul backend) prima di eseguire alcune trasformazioni di dati e quindi restituire una risposta JSON serializzata.

Utilizzando una libreria di terze parti, siamo in grado di registra ogni interazione HTTP univoca che si verifica sul backend e la scrive nel filesystem. Queste registrazioni vengono quindi “riprodotte” consentendo a questi risultati di query di essere trattati come deterministici durante il test.

Il mio caso di test contiene una singola asserzione. È solo una stringa che contiene la risposta JSON prevista per un singolo feed. Dopo aver inizializzato la nostra applicazione, le permettiamo di instradare una richiesta prima di acquisire la risposta e confrontarla con il JSON previsto.

1) Si tratta di un test funzionale o di un test di integrazione?

2) Se funzionale, qual è esattamente la differenza tra “Big Bang Integration Testing e Functional Testing”?

Risposta

1) È un test funzionale o un test di integrazione?

Funzionale test e test di integrazione sono classificazioni di test e non si escludono a vicenda.

In questo caso sono entrambi. I test di integrazione sono per definizione qualsiasi test che sta testando più di un componente. Può essere a un livello basso per testare due classi che lavorano insieme, oppure possono essere test che testano lintero sistema nel suo insieme.

I test funzionali sono test che confermano una data funzione del sistema. Quindi, se ho un requisito ” il sistema deve rendere persistente loggetto degli utenti nel database “, il test funzionale potrebbe verificare tale requisito avviando il sistema, salvando un utente, arrestando il sistema, riavviandolo e verificando che lutente esista e non sia cambiato.

Se stai scrivendo ingaggio di casi di test da una specifica di requisiti o da storie di utenti, chiamerei i vostri casi di test “test funzionali”, ma sono anche classificati come test di integrazione per natura.

2) Se funzionale, qual è esattamente la differenza tra “Big Bang Integration Testing e Functional Testing”?

Dalla mia comprensione “big bang test di integrazione “è il test di integrazione in cui tutti i componenti del sistema vengono integrati e quindi testati. Lobiettivo di questo test è assicurarsi che tutti i componenti si integrino correttamente e che lapp possa avviarsi. Lo svantaggio di questo tipo di test è che il fallimento di un test case fornisce pochissime indicazioni su dove si trova il bug, quindi è importante avere anche test di integrazione di livello inferiore.

I tuoi test funzionali lo faranno probabilmente integra anche tutti i componenti nel sistema prima del test. Ma mentre i test di integrazione big bang possono sembrare simili perché lintero sistema è in fase di avvio, sono concettualmente diversi.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *