title: Test strutturale
text: # Test strutturale
  
  Il test strutturale, detto anche white box o verifica strutturale, è un particolare tipo di test che viene effettuato per rilevare errori in uno o più componenti (parte di codice, metodo, funzione, classe, programmi, ecc.) di un sistema software. Il suo funzionamento si basa su alcuni criteri che hanno lo scopo di trovare dati di test che consentano di percorrere tutto il programma.
  
  Per trovare un errore nel codice, infatti, bisogna usare dei dati che “percorrono” la parte erronea del programma. Per testare una parte di programma si introduce il concetto di cammino: una sequenza di istruzioni attraversata durante un'esecuzione. Naturalmente non esiste un criterio in grado di testare ogni singolo cammino dato l'elevato numero di questi ultimi (soprattutto in presenza di cicli), tuttavia, è possibile trovare un numero finito di cammini indipendenti che combinati tra loro forniscano tutti (o per lo meno la maggior parte) i restanti cammini. Se eseguito correttamente e senza particolari eccezioni, il test può coprire fino al 90% delle istruzioni.
  
  A differenza della metodologia black box, per cui non si ha a disposizione il codice, alla base della metodologia white box sta proprio l'analisi del codice, che permette appunto di identificare i cammini da percorrere e viene effettuata anche in modo manuale, con l'uso di diagrammi di flusso che mostrano i diversi cammini del programma e delle tabelle di traccia, che simulano l'esecuzione del codice.
  
  