Differenza tra test funzionale, usabilità, prestazioni, affidabilità, carico e sicurezza

Differenza tra test funzionale, usabilità, prestazioni, affidabilità, carico e sicurezza

Test di sistema

I test di sistema, in inglese system test, verificano la corretta esecuzione dell’intera applicazione, incluse le interfacce con altre applicazioni. Si eseguono sia tipi di test funzionali che strutturali per verificare che il sistema sia corretto sia dal punto di vista funzionale che operativo. Il test di sistema include perciò i seguenti tipi di test:

  1. Test funzionale (Functional Test)
  2. Test di usabilità (Usability Test)
  3. Test delle prestazioni (Performance Test)
  4. Test di affidabilità (Reliability Test)
  5. Test di carico (Stress/Load Test)
  6. Test di sicurezza (Security Test)

Differenza tra test funzionale, usabilità, prestazioni, affidabilità, carico e sicurezza

Test funzionale (Functional Test)

Verifica che tutte le funzioni siano correttamente completate in uno scenario simile a quello degli utenti finali. Le funzioni non sono eseguite singolarmente (esse sono state già verificate durante il test d’integrazione), ma in una sequenza di operazioni che completi un tipico task dell’utente finale. I casi di test sono quindi eseguiti in una sequenza tale da completare uno o più “scenari di test”.

Test di usabilità (Usability Test)

Verifica la facilità d’uso e la comprensibilità dell’applicativo da parte degli utenti finali. Il test è previsto quando ci siano requisiti relativi a caratteristiche di usabilità del sistema e siano indirizzati nel Piano della qualità. Tali caratteristiche di usabilità risultano in questo caso critiche per l’introduzione del prodotto software presso l’utenza finale. Il test di usabilità richiede competenze specifiche, utilizzo di tecniche proprie ed il coinvolgimento di utenti veri o di persone in grado di sostituirle.

Test delle prestazioni (Performance Test)

Verifica le prestazioni del sistema quali tempi di risposta e utilizzo delle risorse (memoria, linee di trasmissione, banche dati, altri componenti). Il test è eseguito quando le caratteristiche relative alle prestazioni costituiscono un fattore critico per il successo del prodotto. In questo caso sono stati definiti requisiti di prestazioni, stabiliti metriche e valori di soglia da rispettare ed il tutto è stato documentato nel Piano di qualità.

Test di affidabilità (Reliability Test)

Verifica l’affidabilità del sistema quando essa sia richiesta esplicitamente. L’affidabilità è definita come la capacità del sistema di operare per un intero arco di tempo (per esempio per 8 ore lavorative consecutive, oppure H24/7×7) senza che sia rilevato alcun difetto che ne interrompa l’operatività. In questo caso esistono requisiti specifici definiti sull’affidabilità, sono stabilite metriche e valori di soglia concordati ed il tutto è documentato nel Piano di qualità. Il test è eseguito con opportuni strumenti (tool) che simulano l’utilizzo del prodotto in modo continuativo e misura il tempo intercorso tra due difetti consecutivi. Tale tempo (detto Mean Time Between Failure MTBF) rappresenta l’affidabilità del sistema.

In caso di caduta del sistema il test verifica la capacità del sistema di recuperare i dati e le transazioni eseguite.

Test di carico (Stress/Load Test)

Verifica la capacità del sistema di reggere un determinato carico di lavoro. Il test è eseguito a fronte di requisiti espliciti in materia, da cui sono tratte metriche per misurare le prestazioni, valori di soglia da rispettare. Il tutto è documentato nel Piano di qualità. Il test è eseguito utilizzando opportuni tool che simulano il carico possibile del sistema, misurando le prestazioni e verificando che non ci siano degradi nelle prestazioni o cadute del sistema.

Test di sicurezza (Security Test)

La verifica del livello di sicurezza fornito dal sistema è fatta in base a requisiti specifici che indicano tale livello, le modalità operative e le condizioni sottostanti. Il test è eseguito da esperti in grado di simulare attacchi al sistema e verificare la reattività del sistema stesso.

Il test di sistema è eseguito in un ambiente simile (quando non può essere lo stesso) a quello di esercizio in cui il prodotto sarà utilizzato dagli utenti.

La documentazione relativa al test di sistema comprende:

  • Piano di test;
  • Casi di test e scenari di test;
  • Rapporti periodici sullo stato di completamento dei test e dello stato di risoluzione degli errori;
  • Rapporti specifici sui risultati dei test di usabilità, performance, affidabilità, ecc.
  • Rapporto finale di completamento del test di sistema.

Pubblicato da Vito Lavecchia

Lavecchia Vito Ingegnere Informatico (Politecnico di Bari) Email: [email protected] Sito Web: https://vitolavecchia.altervista.org

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *