Application testing
Il testing ha come obiettivo la verifica del funzionamento di un prodotto software rispetto ai requisiti del sistema. Saper impostare ed eseguire una strategia di test è elemento chiave per garantire un elevato standard di qualità del software e richiede una corretta impostazione organizzativa e metodologica. Il corso illustra in modo esauriente principi, strategie e tecniche su cui si fonda il testing: approccio di tipo sia funzionale (“black box” testing), sia strutturale (“white box” testing); strategia basata su più livelli e tipologie di test; esistenza di un ciclo di vita del test con conseguente definizione di attività, responsabilità e prodotti, metriche. Partendo da questa base, si passa a specializzare queste tecniche in funzione di diversi ambiti metodologici e tecnologici, quali ad esempio le applicazioni Web, la SOA e i metodi Agili. Il corso fornisce inoltre gli elementi per inquadrare il testing nell’ambito del sistema qualità alla luce delle norme ISO/IEC 25000.
Contenuti
Obiettivo del testing, il testing nell'ambito del Sistema Qualità, fattori di qualità del software, le norme ISO/IEC 25000.
Unit, integration e System Testing, collaudo e accettazione.
Funzionale e non funzionale.
Verifica e validazione, "bug fixing", non regressione.
White, black e grey box.
Pianificazione (definizione della Strategia di test in funzione dei requisiti di qualità e degli obiettivi concordati con l'utente, livello di copertura funzionale e topologica, Piano dei test), progettazione (Checklist, Casi di Test, Classi di Equivalenza, Specifiche di Test, Unità di Lancio), esecuzione (aspetti organizzati, scheda esito test, rapporto anomalie), gestione delle anomalie.
Testing di applicazioni web, testing di applicazioni SOA, il testing nei metodi iterativi e nell'Agile.
Indice di difettosità del prodotto, efficienza nella rimozione dei difetti, valutazione dell'efficacia del test, determinazione dell'impegno e valutazione oggettiva di parametri di qualità mediante la metrica dei Function Point.
Prerequisiti
Conoscenza delle problematiche di sviluppo applicativo
Destinatari