Performance testing: Come testare i requisiti di velocità, scalabilità e stabilità

Performance testing: Come testare i requisiti di velocità, scalabilità e stabilità

Performance testing

Nell’ambito del testing software, il test delle prestazioni, o in inglese Performance testing, è un tipo di test destinato a determinare la capacità di risposta, la velocità effettiva, l’affidabilità e/o la scalabilità di un sistema in un determinato carico di lavoro. Il test delle prestazioni garantisce che le applicazioni software funzionino bene al di sotto del carico di lavoro previsto.

Il Performance testing viene comunemente condotto per raggiungere i seguenti obiettivi:

  • Valutare la prontezza alla produzione
  • Valutare in base a criteri di prestazione
  • Confrontare le caratteristiche prestazionali di più sistemi o configurazioni di sistema
  • Trova l’origine dei problemi di prestazioni
  • Supporta la messa a punto del sistema
  • Trova livelli di throughput

I test delle prestazioni vengono eseguiti per fornire alle parti interessate informazioni sulla loro applicazione in termini di velocità, stabilità e scalabilità. Ancora più importante, Performance Testing scopre ciò che deve essere migliorato prima che il prodotto venga commercializzato. Senza il test delle prestazioni, è probabile che il software soffra di problemi come:

  • Funzionamento lento mentre diversi utenti lo utilizzano contemporaneamente
  • Incongruenze tra i diversi sistemi operativi e scarsa usabilità.
  • Insoddisfazione dell’utente per le caratteristiche prestazionali del sistema.
  • Perdite di entrate o danneggiamento della credibilità del marchio a causa di problemi di scalabilità o stabilità

I test delle prestazioni determineranno se il loro software soddisfa i requisiti di velocità, scalabilità e stabilità in base ai carichi di lavoro previsti. Le applicazioni inviate al mercato con parametri di prestazione scadenti a causa di test di prestazioni inesistenti o scadenti potrebbero acquisire una cattiva reputazione e non riuscire a raggiungere gli obiettivi di vendita previsti.

Test delle prestazioni: Differenza tra Test di carico e Test da sforzo

Metriche delle prestazioni del software

La metrica è un’unità di misura standard che calcola i risultati. Le metriche software sono utilizzate per la valutazione del prodotto software e dei suoi servizi.
Di conseguenza, le metriche dei test delle prestazioni vengono utilizzate per valutare i parametri delle prestazioni dell’applicazione e per identificare quali aree dell’applicazione stanno creando colli di bottiglia nelle prestazioni.
I risultati quantitativi forniscono sempre il miglior risultato di un’attività e le metriche aiutano a ottenere questi risultati quantitativi.

I seguenti punti evidenziano anche l’importanza delle metriche dei test delle prestazioni:

  • Le metriche vengono utilizzate per migliorare la qualità del prodotto per ottenere una migliore soddisfazione del cliente
  • Le metriche forniscono un output facile e chiaro dell’attività e identificano le aree che richiedono maggiore attenzione
  • Le metriche aiutano a confrontare i risultati di diversi test per scoprire l’impatto di qualsiasi cambiamento nell’applicazione
  • Le metriche sono monitor che forniscono la causa esatta del problema
  • Le metriche stabiliscono la base per tutti i test
  • Le metriche tengono traccia dell’avanzamento del progetto

Performance testing

Questo tipo di test determina o convalida le caratteristiche di velocità, scalabilità e/o stabilità del sistema o dell’applicazione in prova. Le prestazioni riguardano il raggiungimento dei tempi di risposta, della produttività e dei livelli di utilizzo delle risorse che soddisfano gli obiettivi di prestazione per il progetto o il prodotto. In questa articolo, i test delle prestazioni rappresentano il superset di tutte le altre sottocategorie di test relativi alle prestazioni:

  1. Test di carico (o Load testing)
  2. Test da sforzo (o Stress testing)

Test di carico (Load testing)

Questa sottocategoria di test delle prestazioni si concentra sulla determinazione o sulla convalida delle caratteristiche delle prestazioni del sistema o dell’applicazione in prova quando sottoposti a carichi di lavoro e volumi di carico previsti durante le operazioni di produzione.

Test da sforzo (Stress testing)

Questa sottocategoria di test delle prestazioni si concentra sulla determinazione o sulla convalida delle caratteristiche delle prestazioni del sistema o dell’applicazione in prova quando sottoposti a condizioni oltre a quelle previste durante le operazioni di produzione. Le prove di stress possono anche includere prove incentrate sulla determinazione o sulla convalida delle caratteristiche di prestazione del sistema o dell’applicazione in prova quando sono soggette ad altre condizioni di stress, come memoria limitata, spazio su disco insufficiente o errore del server.

Infine, questi test sono progettati per determinare in quali condizioni un’applicazione fallirà, in che modo fallirà e quali indicatori possono essere monitorati per avvisare di un errore imminente.
Ciascuno di questi sottogruppi di test delle prestazioni del software ha il suo impatto sulla qualità dei prodotti software e di conseguenza il valore generato e le sfide emergenti sulla qualità nell’ambito di ciascuno dei test delle prestazioni sono diversi dagli altri.

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 *