Menu
Menu
Contattaci
Il nostro settore richiede uno studio continuo e una forte attenzione all’innovazione. Incentiviamo quindi dei programmi formativi annuali per tutti i componenti del team, con ore dedicate (durante l’orario di lavoro) e serate formative sia online che in presenza. Sponsorizziamo eventi, sia come partner che semplicemente come partecipanti, e scriviamo articoli su quello che abbiamo imparato per essere, a nostra volta, dei divulgatori.
Vai alla sezione TeamQuesto articolo ha l’obiettivo di fare una panoramica di massima sui diversi modi di testare il software.
Tipicamente vi sono diversi modi di testare un software: si va dall’avviare l’applicazione e fare qualche click sulla User Interface per certificare che non succeda nulla di non previsto, a test rigorosi ed automatici prima del rilascio in ambienti di produzione; purtroppo si tende ad utilizzare spesso la metodologia meno costosa (sia in termini di tempo che di skills dei developers) in base ai diversi ambiti professionali: per un software poco critico si tenderà ad utilizzare il primo metodo, mentre per software medicali si spera che venga utilizzato il secondo! 🙂
Ci sono diversi modi di testare, automatizzati o manuali, funzionali e non funzionali, black-box o white-box e tutti questi possono essere su diversi livelli (test di unità, test dei componenti, test di integrazione). Per ogni progetto, è necessario trovare il metodo di test più adatto; più metodi si usano, più basse saranno le possibilità di rilasciare bug nel software (anche se questa possibilità non arriverà mai a zero)… d’altra parte, i test richiedono tempo, quindi costano. Questo è il motivo per cui è necessario individuare la metodologia più adatta al proprio progetto.
Il test funzionale mira a certificare che tutti i requisiti funzionali siano soddisfatti. Qui, in linea di massima, si verifica se la funzionalità del software corrisponde a quanto richiesto dal cliente. È necessario fare sempre attenzione anche ai casi limite, dove i requisiti funzionali non sono sempre chiari e/o sono particolarmente complessi.
I test non funzionali mirano a certificare tutti quegli aspetti non funzionali del software: la stabilità del software, o se il software è funzionante in ambienti diversi se richiesto (sistema operativo, browser web, hardware diverso, ecc.). I test di sicurezza appartengono a questa categoria, e sono particolarmente critici in ambienti bancari e/o web-based. Anche il test di carico appartiene a questa categoria, dove tipicamente vengono messe alla prova le architetture ed i sistemi di persistenza con un alto numero di richieste concorrenti. In questa categoria rientrano anche l’analisi del tempo di esecuzione del software negli scenari più critici (profiling) o il consumo di memoria.
Prossima pagina: Test Automatici e Manuali, Test Black-box e White-box
Segui Giuneco sui social