Contattaci

[contact-form-7 404 "Non trovato"]

Linee Guida per il Testing del Software

  • Data: 21 Marzo 2019
  • Autore: Roberto Izzo
  • Categorie

  • Giuneco Tech

    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 Team
  • Questo 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.

    Test funzionali e non funzionali

    Test funzionali

    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.

    Test non funzionali

    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