Cos'è il test statico?
Il test statico è un tipo di test del software in cui l'applicazione software viene testata senza l'esecuzione di codice. Vengono eseguite revisioni manuali o automatizzate del codice, dei documenti dei requisiti e della progettazione dei documenti per trovare gli errori. L'obiettivo principale del test statico è migliorare la qualità delle applicazioni software trovando errori nelle prime fasi del processo di sviluppo del software.
I test statici comportano revisioni manuali o automatizzate dei documenti. Questa revisione viene eseguita durante una fase iniziale di test per rilevare il difetto nelle prime fasi di STLC. Esamina i documenti di lavoro e fornisce commenti di revisione. È 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 test
- Casi test
- Script di test
- Guida o documento utente
- Contenuto della pagina Web
Cos'è il test dinamico?
In Dynamic Testing , viene eseguito un codice. Controlla il comportamento funzionale del sistema software, l'utilizzo della memoria / cpu e le prestazioni complessive del sistema. Da qui il nome "Dinamico"
L'obiettivo principale di questo test è confermare che il prodotto software funziona in conformità con i requisiti aziendali. Questo test è anche chiamato tecnica di esecuzione o test di convalida.
Il test dinamico esegue il software e convalida l'output con il risultato atteso. Il test dinamico viene eseguito a tutti i livelli di test e può essere test in scatola nera o bianca.
DIFFERENZA CHIAVE
- Il test statico è stato 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 trovare errori mentre il test dinamico controlla il comportamento funzionale del sistema software, l'utilizzo della memoria / CPU e le prestazioni complessive del sistema.
- Il test statico riguarda la prevenzione dei difetti mentre il test dinamico riguarda la ricerca 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 sono strutturali e di copertura delle istruzioni, mentre le tecniche di test dinamico sono l'analisi del valore limite e il partizionamento di equivalenza.
Tecniche di test statico:
- Recensioni informali: questo è uno dei tipi di revisione che non segue alcun processo per trovare errori nel documento. Con questa tecnica, devi solo rivedere il documento e fornire commenti informali su di esso.
- Revisioni tecniche: un team composto da colleghi, rivede 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 strategia di test, 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 ce ne sono. Un incontro è guidato dall'autore. Scribe prende nota dei commenti di revisione
- Ispezione: lo scopo principale è trovare i difetti e la riunione è guidata da un moderatore qualificato. Questa revisione è un tipo formale di revisione in cui segue un processo rigoroso per trovare i difetti. I revisori hanno una lista di controllo per esaminare i prodotti di lavoro, registrano il difetto e informano i partecipanti di correggere tali errori.
- Revisione del codice statico: questa è una revisione sistematica del codice sorgente del software senza eseguire il codice. Controlla la sintassi del codice, gli standard di codifica, l'ottimizzazione del codice, ecc. Viene anche definito white box testing. Questa revisione può essere eseguita in qualsiasi momento durante lo sviluppo.
Tecniche di test dinamico:
- Unit Testing: in Unit Testing, le singole unità o moduli vengono testati dagli sviluppatori. Implica il test del codice sorgente da parte degli sviluppatori.
- Test di integrazione: i singoli moduli vengono raggruppati e testati dagli sviluppatori. Lo scopo è determinare quali moduli funzionano come previsto una volta integrati.
- Test del sistema: il test del sistema viene eseguito sull'intero sistema controllando se il sistema o l'applicazione soddisfa il documento di specifica dei requisiti.
Inoltre, i test non funzionali come le prestazioni, i test di sicurezza rientrano nella categoria dei test dinamici.
Differenza tra test statici e dinamici:
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 consiste nel trovare e correggere i difetti |
Il test statico fornisce una valutazione del codice e della documentazione | Il test dinamico fornisce bug / colli di bottiglia nel sistema software. |
I test statici comportano 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 |
Il test statico copre il test strutturale e di copertura delle dichiarazioni | Le tecniche di test dinamico sono l'analisi del valore limite e il partizionamento di equivalenza. |
Il costo per la ricerca di difetti e la riparazione è inferiore | Il costo per trovare e riparare 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 comporta dopo la fase di sviluppo |
Più commenti di 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 |