Cos'è il test di scalabilità? Impara con l'esempio

Test di scalabilità

Test di scalabilità è un metodo di test non funzionale che misura le prestazioni di un sistema o di una rete quando il numero di richieste utente viene aumentato o ridotto. Lo scopo del test di scalabilità è garantire che il sistema possa gestire l'aumento previsto del traffico utente, del volume di dati, della frequenza dei conteggi delle transazioni, ecc. Testa la capacità del sistema di soddisfare le crescenti esigenze.

Viene anche definito test delle prestazioni e in quanto tale si concentra sul comportamento dell'applicazione quando distribuita su un sistema più grande o testata sotto carico eccessivo. In Software Engineering, Il test di scalabilità consiste nel misurare il punto in cui l'applicazione smette di ridimensionarsi e identificarne il motivo.

Perché eseguire test di scalabilità

  • I test di scalabilità ti consentono di determinare in che modo la tua applicazione si adatta all'aumento del carico di lavoro.
  • Determinare il limite di utenti per l'applicazione Web.
  • Determina il degrado lato client e l'esperienza dell'utente finale sotto carico.
  • Determinare la robustezza e il degrado lato server.

Immagine del test di scalabilità

Cosa testare nei test di scalabilità

Ecco alcuni attributi dei test di scalabilità:

  • Tempo di risposta
  • Transizione dello schermo
  • Throughput
  • Ora (ora della sessione, ora del riavvio, ora della stampa, ora della transazione, ora dell'esecuzione dell'attività)
  • Misurazione delle prestazioni con un numero di utenti
  • Richiesta al secondo, Transazione al secondo, Hit al secondo
  • Misurazione delle prestazioni con un numero di utenti
  • Utilizzo della rete
  • Utilizzo della CPU/memoria
  • Web Server (richiesta e risposta al secondo)
  • Misurazione delle prestazioni sotto carico

Strategia di test per i test di scalabilità

La strategia di test per i test di scalabilità differisce in termini di tipo di applicazione da testare. Se un'applicazione accede a un database, i parametri di test testeranno la dimensione del database in relazione al numero di utenti e così via.

Prerequisiti per il test di scalabilità

  • Capacità di distribuzione del carico– Verificare se lo strumento di test del carico consente di generare il carico da più macchine e controllarlo da un punto centrale.
  • Operating System- Controlla cosa sistemi operativi eseguire gli agenti di generazione del carico e il master del test di carico
  • Processore– Controllare quale tipo di CPU è richiesta per l'agente utente virtuale e il master del test di carico
  • Memorie– Controlla quanta memoria sarebbe sufficiente per l'agente utente virtuale e il master del test di carico

Come eseguire test di scalabilità

  1. Definire un processo ripetibile per l'esecuzione di test di scalabilità durante l'intero ciclo di vita dell'applicazione
  2. Determinare i criteri per la scalabilità
  3. Elenca gli strumenti software necessari per eseguire il test di carico
  4. Imposta l'ambiente di test e configura l'hardware richiesto per eseguire test di scalabilità
  5. Pianificare gli scenari di test e i test di scalabilità
  6. Crea e verifica lo script visivo
  7. Creare e verificare gli scenari dei test di carico
  8. Eseguire i test
  9. Valuta i risultati
  10. Genera i report richiesti

Piano di test di scalabilità

Prima di creare effettivamente i test, sviluppare un piano di test dettagliato. È un passo importante per garantire che il test sia conforme ai requisiti dell'applicazione.

Di seguito sono riportati gli attributi per la creazione di un ben definito Piano di test per i test di scalabilità.

  • Passaggi per gli script: lo script di test deve contenere un passaggio dettagliato che determina le azioni esatte che un utente dovrebbe eseguire.
  • Dati di esecuzione: il piano di test dovrebbe determinare tutti i dati di runtime necessari per interagire con l'applicazione
  • Test guidati dai dati: se gli script necessitano di dati variabili in fase di esecuzione, è necessario comprendere tutti i campi che richiedono questi dati.

Test di scalabilità e test di carico

Test di scalabilità Caricare i test
  • Si concentra sulle prestazioni dei tuoi siti web, software, hardware e applicazioni quando vengono apportate modifiche alle dimensioni o al volume del sistema per soddisfare un'esigenza crescente.
  • Test di carico si concentra sul test di un'applicazione sotto carichi pesanti, per determinare a che punto il tempo di risposta del sistema fallisce.

Sommario

  • Si tratta di un tipo di test del software che verifica la capacità di un sistema, di una rete o di un processo quando le dimensioni/il volume del sistema cambiano per soddisfare un'esigenza crescente.
  • L'idea alla base del test di scalabilità è misurare il punto in cui l'applicazione smette di ridimensionarsi e identificarne il motivo
  • La strategia di test per i test di scalabilità differisce in termini di tipo di applicazione da testare.