Cos'è il test statico?
Il test statico è una tecnica di test del software che viene utilizzata per controllare i difetti nell'applicazione software senza eseguire il codice. Il test statico viene eseguito per evitare errori in una fase iniziale di sviluppo poiché è più facile identificare gli errori e risolverli. Aiuta anche a trovare errori che potrebbero non essere trovati dai test dinamici.
La sua controparte è il test dinamico che controlla un'applicazione quando viene eseguito il codice. Fare riferimento a questo tutorial per una differenza dettagliata tra test statici e dinamici.
I due tipi principali di tecniche di test statico sono
- Esami manuali : gli esami manuali includono l'analisi del codice eseguita manualmente, nota anche come REVISIONI.
- Analisi automatizzata mediante strumenti: le analisi automatizzate sono fondamentalmente analisi statiche che vengono eseguite utilizzando strumenti.
In questo tutorial imparerai-
- Cos'è il test statico?
- Che cos'è la revisione dei test?
- Perché il test statico?
- Cosa viene testato nei test statici
- Come vengono eseguiti i test statici
- Tecniche di test statico
- Strumenti utilizzati per i test statici
- Suggerimenti per il successo del processo di test statico
Che cos'è la revisione dei test?
Una revisione in un test statico è un processo o una riunione condotta per trovare i potenziali difetti nella progettazione di qualsiasi programma. Un altro significato della revisione è che tutti i membri del team vengono a conoscenza dello stato di avanzamento del progetto e talvolta la diversità dei pensieri può portare a ottimi suggerimenti. I documenti vengono esaminati direttamente dalle persone e le discrepanze vengono risolte.
Le recensioni possono essere ulteriormente classificate in quattro parti:
- Recensioni informali
- Procedure dettagliate
- Revisione tecnica
- Ispezioni
Durante il processo di revisione, quattro tipi di partecipanti che prendono parte al test sono:
- Moderatore : esegue il controllo dell'ingresso, segue le rielaborazioni, istruisce il membro del team, programma la riunione.
- Autore : si assume la responsabilità di correggere il difetto riscontrato e migliora la qualità del documento
- Scribe : esegue la registrazione del difetto durante una revisione e partecipa alla riunione di revisione
- Revisore : controlla il materiale per i difetti e ispeziona
- Manager : decide sull'esecuzione delle revisioni e garantisce il raggiungimento degli obiettivi del processo di revisione.
I tipi di difetti che possono essere più facili da trovare durante i test statici sono:
- Deviazioni dagli standard
- Codice non gestibile
- Difetti di progettazione
- Requisiti mancanti
- Specifiche dell'interfaccia incoerenti
Di solito, i difetti scoperti durante i test statici sono dovuti a vulnerabilità di sicurezza, variabili non dichiarate, violazioni dei limiti, violazioni della sintassi, interfaccia incoerente, ecc.
Perché il test statico?
Il test statico viene eseguito per i seguenti motivi
- Rilevamento e correzione precoce dei difetti
- Tempi di sviluppo ridotti
- Tempi e costi di test ridotti
- Per il miglioramento della produttività dello sviluppo
- Per ottenere meno difetti in una fase successiva del test
Cosa viene testato nei test statici
In Static Testing, vengono testati i seguenti elementi
- Casi di unit test
- Documento sui requisiti aziendali (BRD)
- Casi d'uso
- Requisiti di sistema / funzionali
- Prototipo
- Documento di specifica del prototipo
- Foglio di calcolo del dizionario dei campi DB
- Dati di test
- Documento Matrice di tracciabilità
- Manuale dell'utente / Guide di formazione / Documentazione
- Documento di strategia del piano di test / Casi di test
- Script di test di automazione / prestazioni
Come vengono eseguiti i test statici
Per eseguire il test statico, viene eseguito nei seguenti modi,
- Eseguire il processo di ispezione per ispezionare completamente il design dell'applicazione
- Utilizzare una lista di controllo per ogni documento in esame per assicurarsi che tutte le revisioni siano coperte completamente
Le varie attività per eseguire test statici sono:
- Validazione dei requisiti dei casi d'uso: convalida che tutte le azioni dell'utente finale siano identificate, nonché qualsiasi input e output ad esse associati. Più dettagliati e approfonditi sono i casi d'uso, più accurati e completi possono essere i casi di test.
- Convalida dei requisiti funzionali : garantisce che i requisiti funzionali identifichino tutti gli elementi necessari. Esamina anche la funzionalità del database, gli elenchi di interfacce e i requisiti hardware, software e di rete.
- Revisione dell'architettura : tutti i processi a livello aziendale come posizioni dei server, diagrammi di rete, definizioni di protocolli, bilanciamento del carico, accessibilità del database, apparecchiature di test, ecc.
- Convalida prototipo / mockup schermo : questa fase include la convalida dei requisiti e dei casi d'uso.
- Convalida del dizionario di campo : ogni campo dell'interfaccia utente è sufficientemente definito per creare casi di test di convalida a livello di campo. I campi controllano la lunghezza minima / massima, i valori di elenco, i messaggi di errore, ecc.
Tecniche di test statico
- Recensioni informali
- Procedure dettagliate
- Revisioni tecniche
- Ispezioni
- Analisi statica
- Flusso di dati
- Flusso di controllo
Strumenti utilizzati per i test statici
I vari strumenti utilizzati per i test statici sono i seguenti,
- Checkstyle
- Fuliggine
- SourceMeter
Suggerimenti per il successo del processo di test statico
Alcuni suggerimenti utili per eseguire un processo di test statico in Ingegneria del software.
- Concentrati solo sulle cose che contano davvero
- Pianifica e monitora in modo esplicito le attività di revisione. Una procedura dettagliata e un'ispezione del software sono generalmente composte da revisioni tra pari
- Formare i partecipanti con esempi
- Risolvi i problemi delle persone
- Mantieni il processo formale come la cultura del progetto
- Miglioramento continuo - Processo e strumenti
- Eliminando i principali ritardi nell'esecuzione dei test, è possibile ridurre i costi e i tempi
Sommario:
- Il test statico consiste nel trovare i difetti il prima possibile.
- I test statici non sostituiscono i test dinamici, entrambi trovano un diverso tipo di difetti
- Le revisioni sono una tecnica efficace per i test statici
- Le recensioni non solo aiutano a trovare i difetti, ma anche a comprendere i requisiti mancanti, i difetti di progettazione e il codice non gestibile.