Testing

Posso usare il testing a diverso livello ad esempio testare se il programma produce il giusto output o c’è un problema.

Il test mostra quando ci sono errori, non quando non ce ne sono se non ci sono errori, non vuol dire che non esistono, semplicemente non li ho trovati.

Obiettivi:

  • behaviour non desiderati
  • il sistema funziona bene sia in casi previsti che non (gestisce gli errori).

Posso pensare ai casi estremi o manualmente, o facendo generare da un modello dei casi e degli scenari particolari.

Inspection

Viene fatta manualmente una review del codice.

Vantaggi:

  • errori possono nascondere altri errori
  • non devo per forza fare un’implementazione

Ad esempio se l’idea e il codice sono brutti posso dirlo da subito, senza scrivere o implementare nulla.