back to top

Unit testing: cos’è e come funziona

Chi ha cominciato da poco ad impratichirsi di linguaggi di programmazione avrà probabilmente sentito parlare di "Unit testing" senza sapere esattamente di cosa si tratti. Diciamo subito che l’Unit testing è una procedura di controllo del codice sorgente non molto diffusa perché richiede tempo e, per questo motivo, viene spesso ignorata dai programmatori meno "pignoli".

In pratica con lo Unit testing si intende la verifica di singole porzioni di codice sorgente il quale viene analizzato a blocchi o, più corettamente, ad unità.

Come si effettua uno Unit testing?

In pratica il codice sorgente da verificare viene "spezzettato" in sezioni unitarie (dette appunto unit o unità) testabili autonomamente, dopodiché si procede ai test su ciascuna di queste.

L’attività di debug, quindi, sarà svolta su singoli pezzi di codice che verranno analizzati uno ad uno, mediante dei test case.

Questo tipo di approccio al debug è applicabile sia nella programmazione procedurale che ad Oggetti: nel caso della programmazione procedurale una sezione unitaria potrebbe essere per esempio una singola funzione, mentre nell’Object-Oriented Programming (Programmazione Orientata agli Oggetti o OOP) questa potrebbe essere rappresentata da un metodo.

Una volta effettuati i test case questi permetteranno di rilevare velocemente eventuali vulnerabilità e malfunzionamenti o, al contrario, di accertare che una determinata porzione di codice funzioni correttamente.

Una volta completato il debug di una unità, questa dovrà essere contrassegnata in modo da confermare che, nella forma corrente, non necessita di correzioni e può considerarsi esenta da bug.

Software per effettuare lo Unit testing

Esistono diversi software appositamente pensati per lo Unit testing. Di seguito un breve elenco dei più noti:

  • jUnit: è, probabilmente, uno dei framework più famosi per lo Unit testing di applicazioni scritte in Java. Per download e documentazione si visiti la pagina ufficiale del progetto.
  • xUnit: si tratta di uno strumento (gratuto e open-source) appositamente pensato per il debug di applicazioni basate sl .NET Framework. Per maggiori info, documentazione e download vi invito a visitare la pagina ufficiale del progetto.
  • Embunit: è uno dei più popolari tool per lo Unit testing dedicato agli sviluppatori C e C++. Per info e download si visiti il sito ufficiale (la licenza del software costa, nel momento in cui scriviamo, circa 95 sterline).
  • PHPUnit: per lo Unit testing in PHP vi consiglio di utilizzare un framework come PHPUnit, appositamente creato per questo scopo, riccamente documentato e disponibile gratuitamente.
Pubblicitร 
Massimiliano Bossi
Massimiliano Bossi
Stregato dalla rete sin dai tempi delle BBS e dei modem a 2.400 baud, ho avuto la fortuna di poter trasformare la mia passione in un lavoro (nonostante una Laurea in Giurisprudenza). Adoro scrivere codice e mi occupo quotidianamente di comunicazione, design e nuovi media digitali. Orgogliosamente "nerd" sono il fondatore di MRW.it (per il quale ho scritto centinaia di articoli) e di una nota Web-Agency (dove seguo in prima persona progetti digitali per numerosi clienti sia in Italia che all'estero).

Leggi anche...

Radice quadrata in C: vediamo come calcolarla in diversi modi

La radice quadrata è un'operazione matematica piuttosto comune (in...

Sperimentare la sequenza di Collatz in C++

Vediamo come verificare la congettura di Collatz con C++....

Calcolare la radice quadrata con Python

In Python è possibile calcolare la radice quadrata usando...

12 film che ogni programmatore dovrebbe guardare (per trovare ispirazione e creatività)

Molti ragazzi hanno deciso di intraprendere una carriera da...

Cartonizzare una foto con Python e la libreria OpenCV

La cartoonization è una procedura grafica che consente di...

Creare flowchart (diagrammi di flusso) online: 5 strumenti gratuiti

Hai bisogno di realizzare una flow chart ma non...
Pubblicitร