SoapUI - Test delle prestazioni

Il test delle prestazioni è uno dei punti di controllo importanti più comuni nei test del servizio Web. Il test delle prestazioni è definito come la creazione o la simulazione artificiale del carico e la misurazione del modo in cui l'ambiente lo gestisce.

Ciò significa che non deve necessariamente essere il modo in cui un sistema si comporta sotto carico elevato, ma può anche essere il modo in cui si comporta con carico di base o carico previsto. Non deve nemmeno essere strutturato, automatizzato o creato in TestWare come SoapUI; il semplice aggiornamento del browser web più e più volte molto velocemente è anche un test di carico.

Tipi di test delle prestazioni

Di seguito sono riportati i tipi di test delle prestazioni:

  • Baseline Testing - Esamina le prestazioni di un sistema sotto il carico previsto o normale e crea una linea di base rispetto alla quale è possibile confrontare gli altri tipi di test.

  • Load Testing- Include l'aumento del carico e vedere come si comporta il sistema sotto un carico maggiore. Durante i test di carico, l'utente può monitorare i tempi di risposta, la velocità effettiva, le condizioni del server e molto altro. L'obiettivo del test di carico non è quello di rompere l'ambiente di destinazione.

  • Soak Testing - L'obiettivo del test è assicurarsi che nessun comportamento indesiderato si manifesti per un periodo di tempo più lungo.

  • Scalability Testing- Il test di scalabilità è molto simile al test di carico, tuttavia invece di aumentare il numero di richieste, aumenta la dimensione o la complessità delle richieste inviate. Ad esempio, l'invio di richieste di grandi dimensioni, allegati di grandi dimensioni o richieste profondamente nidificate.

Aspetti chiave nel servizio Web

Due aspetti risaltano nelle caratteristiche uniche delle prestazioni del Web Service.

Primo aspetto

Sul lato server, è in corso l'elaborazione XML / JSON, sia l'analisi che la serializzazione XML / JSON . La cosa che spesso fallisce per prima è l'elaborazione dei payload. Le ragioni del fallimento possono essere molteplici; può essere nella piattaforma, i punti deboli del server delle applicazioni o può essere un problema di implementazione sotto forma di WSDL inutilmente complessi. Potrebbe anche significare che il codice sta effettuando una richiesta a un database che è lento a rispondere.

Testing Aspect- La complessità dell'analisi del payload XML / JSON significa che è necessario concentrarsi ulteriormente sui test di scalabilità. Significa anche che i WSDL dovrebbero essere esaminati attentamente. Se le richieste e le risposte sono complesse o più grandi, o se includono allegati di grandi dimensioni, concentrarsi sull'enfatizzazione della complessità e vedere come si comporta sotto carico.

Secondo aspetto

Un altro fattore che si incontra frequentemente è la sicurezza. I siti protetti dietro HTTPS hanno prestazioni notevolmente inferiori e nei test del servizio Web possiamo aggiungere un livello di WSSecurity al livello di sicurezza HTTP, diminuendo ulteriormente le prestazioni.

Testing Aspect- La questione della sicurezza significa che è necessario concentrarsi sull'esecuzione di test di richieste sicure. Se l'intero servizio Web è protetto, significa che il test di carico è più importante, soprattutto se si utilizza WS-Security e la gestione dei token.