Test statici e dinamici: differenza tra loro

Differenza tra test statici e dinamici

  • Il test statico viene eseguito senza eseguire il programma mentre il test dinamico viene eseguito eseguendo il programma.
  • Il test statico controlla il codice, i documenti dei requisiti e i documenti di progettazione per individuare gli errori, mentre il test dinamico controlla il comportamento funzionale del sistema software, l'utilizzo della memoria/CPU e le prestazioni generali del sistema.
  • Il test statico riguarda la prevenzione dei difetti mentre il test dinamico riguarda l'individuazione e la correzione dei difetti.
  • Il test statico esegue il processo di verifica mentre il test dinamico esegue il processo di convalida.
  • Il test statico viene eseguito prima della compilazione mentre il test dinamico viene eseguito dopo la compilazione.
  • Le tecniche di test statico riguardano la copertura strutturale e delle istruzioni mentre le tecniche di test dinamico sono l'analisi del valore limite e il partizionamento dell'equivalenza.

Differenza tra test statici e dinamici

Cos'è il test statico?

Test statici è un tipo di test del software in cui l'applicazione software viene testata senza l'esecuzione del codice. Vengono eseguite revisioni manuali o automatizzate del codice, dei documenti dei requisiti e della progettazione dei documenti per individuare gli errori. L'obiettivo principale dei test statici è migliorare la qualità delle applicazioni software trovando errori nelle prime fasi del processo di sviluppo del software.

Prova statica comporta revisioni manuali o automatizzate dei documenti. Questa revisione viene eseguita durante una fase iniziale di test per individuare tempestivamente il difetto STLC. Esamina i documenti di lavoro e fornisce commenti di revisione. Viene anche chiamato test di non esecuzione o test di verifica.

Esempi di documenti di lavoro-

  • Specifiche dei requisiti
  • Documento di progettazione
  • Codice sorgente
  • Piani di prova
  • Test di Casi
  • Script di prova
  • Guida o documento utente
  • Contenuto della pagina Web

Tecniche di test statici

  • Informale Revopinioni: Questo è uno dei tipi di revisione che non segue alcun processo per individuare errori nel documento. Con questa tecnica, basta rivedere il documento e fornire commenti informali su di esso.
  • Consulenza Revopinioni: Un team composto dai tuoi colleghi esamina le specifiche tecniche del prodotto software e verifica se è adatto al progetto. Cercano di trovare eventuali discrepanze nelle specifiche e negli standard seguiti. Questa revisione si concentra principalmente sulla documentazione tecnica relativa al software come Test Strategy, Piano di test e documenti di specifica dei requisiti.
  • Procedura dettagliata: L'autore del prodotto di lavoro spiega il prodotto al suo team. I partecipanti possono porre domande, se presenti. L'incontro è condotto dall'autore. Scribe prende nota dei commenti di revisione
  • Ispezione: Lo scopo principale è trovare difetti e l'incontro è condotto da un moderatore qualificato. Questa recensione è un tipo di revisione formale in cui segue un rigoroso processo per trovare il difetti. RevGli esaminatori hanno una checklist per rivedere i prodotti di lavoro. Registrano il difetto e informano i partecipanti di correggere quegli errori.
  • Codice statico Revista: Si tratta di una revisione sistematica del codice sorgente del software senza eseguirlo. Controlla la sintassi del codice, gli standard di codifica, l'ottimizzazione del codice, ecc. Questo è anche definito test white box. Questa revisione può essere eseguita in qualsiasi momento durante lo sviluppo.

Cos'è il test dinamico?

Sotto Test dinamici, viene eseguito un codice. Controlla il comportamento funzionale del sistema software, l'utilizzo della memoria/CPU e le prestazioni generali del sistema. Da qui il nome “Dinamico”

L'obiettivo principale di questo test è confermare che il prodotto software funzioni in conformità con i requisiti aziendali. Questo test è anche chiamato tecnica di esecuzione o test di convalida.

Test dinamico esegue il software e convalida l'output con il risultato previsto. Il test dinamico viene eseguito a tutti i livelli di test e può essere un test black box o white box.

Test dinamici

Tecniche di test dinamici

Test dinamici

  • Test dell'unità: Sotto Test unitari, le singole unità o moduli vengono testati dagli sviluppatori. Implica il test del codice sorgente da parte degli sviluppatori.
  • Test d'integrazione: I singoli moduli vengono raggruppati e testati dagli sviluppatori. Lo scopo è determinare quali moduli funzionano come previsto una volta integrati.
  • Test di sistema: Test di sistema viene eseguito sull'intero sistema controllando se il sistema o l'applicazione soddisfa il documento di specifica dei requisiti.

Inoltre, test non funzionali come prestazioni, Test di sicurezza rientrano nella categoria dei test dinamici.

Test statici vs. Test dinamico

Test statici Test dinamici
Il test è stato eseguito senza eseguire il programma Il test viene eseguito eseguendo il programma
Questo test esegue il processo di verifica Il test dinamico esegue il processo di convalida
I test statici riguardano la prevenzione dei difetti Il test dinamico riguarda l'individuazione e la correzione dei difetti
I test statici forniscono una valutazione del codice e della documentazione Il test dinamico fornisce bug/colli di bottiglia nel sistema software.
I test statici prevedono una lista di controllo e un processo da seguire Il test dinamico prevede casi di test per l'esecuzione
Questo test può essere eseguito prima della compilazione Il test dinamico viene eseguito dopo la compilazione
I test statici coprono i test di copertura strutturale e di dichiarazione Le tecniche di test dinamico sono l'analisi dei valori limite e il partizionamento delle equivalenze.
Il costo per la ricerca e la riparazione dei difetti è inferiore Il costo per individuare e correggere i difetti è elevato
Il ritorno sull'investimento sarà elevato poiché questo processo è coinvolto in una fase iniziale Il ritorno sull'investimento sarà basso poiché questo processo prevede una fase successiva allo sviluppo
Ulteriori commenti sulle recensioni sono altamente raccomandati per una buona qualità Più difetti sono altamente raccomandati per una buona qualità.
Richiede un sacco di riunioni Comparativamente richiede riunioni minori