Cos'è il Cloud Testing? Tutorial sul test SaaS

Sommario:

Anonim

Test sul cloud

Il Cloud Testing è un tipo di test del software in cui l'applicazione software viene testata utilizzando servizi di cloud computing. Lo scopo del test cloud è quello di testare il software per requisiti funzionali e non funzionali utilizzando il cloud computing che garantisce una disponibilità più rapida con scalabilità e flessibilità per risparmiare tempo e costi per il test del software.

Il cloud computing è una piattaforma basata su Internet che rende vari servizi informatici come hardware, software e altri servizi relativi al computer in remoto.

Esistono principalmente tre modelli di Cloud Computing:

  • SaaS : software come servizio
  • PaaS - Piattaforma come servizio
  • IaaS - Infrastruttura come servizio

Nel tutorial impareremo-

  • Tipo di test in Cloud
  • Come eseguire il test del cloud
  • Esempi di test case per Cloud Testing
  • Sfide nel test del cloud
  • Test cloud vs test convenzionali

Tipo di test in Cloud

L'intero test del cloud è suddiviso in quattro categorie principali

  • Test dell'intero cloud : il cloud viene visualizzato come un'entità intera e in base alle sue caratteristiche viene eseguito il test. I fornitori di cloud e SaaS, nonché gli utenti finali, sono interessati a eseguire questo tipo di test
  • Test in un cloud : controllando ciascuna delle sue funzionalità interne, viene eseguito il test. Solo i fornitori di cloud possono eseguire questo tipo di test
  • Test su cloud : i test vengono eseguiti su diversi tipi di cloud privati, pubblici e ibridi simili al cloud
  • Test SaaS in cloud : i test funzionali e non funzionali vengono eseguiti sulla base dei requisiti dell'applicazione

Test SaaS

Il test SaaS è un processo di test del software in cui l'applicazione software incorporata in un modello Software as a Service viene testata per i requisiti funzionali e non funzionali. L'obiettivo dei test SaaS è garantire la qualità testando la sicurezza dei dati, l'integrità, le prestazioni, la compatibilità e la scalabilità dell'applicazione software.

Il test cloud si concentra sui componenti principali come

  1. Applicazione: copre il test delle funzioni, i flussi di lavoro aziendali end-to-end, la sicurezza dei dati, la compatibilità del browser, ecc.
  2. Rete : include test di varie larghezze di banda di rete, protocolli e trasferimento di dati riuscito attraverso le reti.
  3. Infrastruttura : copre test di ripristino di emergenza, backup, connessione protetta e criteri di archiviazione. L'infrastruttura deve essere convalidata per la conformità normativa

Altri tipi di test in Cloud includono

  • Prestazione
  • Disponibilità
  • Conformità
  • Sicurezza
  • Scalabilità
  • Multi-tenancy
  • Test di aggiornamento in tempo reale

Come eseguire il test del cloud

Tipi di cloud test Attività eseguita
  • Test SaaS o orientato al cloud:
Questo tipo di test viene solitamente eseguito da fornitori cloud o SaaS. L'obiettivo principale è garantire la qualità delle funzioni di servizio fornite offerte in un cloud o in un programma SaaS. I test eseguiti in questo ambiente sono integrazione, funzionalità, sicurezza, convalida di unità, funzioni di sistema e test di regressione, nonché valutazione di prestazioni e scalabilità.
  • Test di applicazioni online su cloud :
I fornitori di applicazioni online eseguono questo test che controlla le prestazioni e il test funzionale dei servizi basati su cloud. Quando le applicazioni sono connesse a sistemi legacy, viene convalidata la qualità della connettività tra il sistema legacy e l'applicazione sotto test su un cloud.
  • Test di applicazioni basate su cloud su cloud :
Per verificare la qualità di un'applicazione basata su cloud su diversi cloud, viene eseguito questo tipo di test.

Esempi di test case per Cloud Testing

Scenari di prova Scenario di prova
Test delle prestazioni
  • Un errore dovuto a un'azione dell'utente sul cloud non dovrebbe influire sulle prestazioni degli altri utenti
  • Il ridimensionamento manuale o automatico non dovrebbe causare alcuna interruzione
  • Su tutti i tipi di dispositivi, le prestazioni dell'applicazione dovrebbero rimanere le stesse
  • L'overbooking da parte del fornitore non dovrebbe ostacolare le prestazioni dell'applicazione
Test di sicurezza
  • Un unico cliente autorizzato dovrebbe avere accesso ai dati
  • I dati devono essere crittografati correttamente
  • I dati devono essere cancellati completamente se non sono utilizzati da un client
  • I dati dovrebbero essere accessibili con una crittografia insufficiente
  • L'amministrazione da parte dei fornitori non dovrebbe accedere ai dati dei clienti
  • Controlla varie impostazioni di sicurezza come firewall, VPN, antivirus ecc.
Test funzionali
  • Un input valido dovrebbe fornire i risultati attesi
  • Il servizio dovrebbe integrarsi correttamente con altre applicazioni
  • Un sistema dovrebbe visualizzare il tipo di account del cliente quando si accede correttamente al cloud
  • Quando un cliente sceglie di passare ad altri servizi, il servizio in esecuzione dovrebbe chiudersi automaticamente
Test di interoperabilità e compatibilità
  • Convalidare i requisiti di compatibilità dell'applicazione sotto il sistema di test
  • Verifica la compatibilità del browser in un ambiente cloud
  • Identifica il difetto che potrebbe sorgere durante la connessione a un cloud
  • Eventuali dati incompleti sul cloud non devono essere trasferiti
  • Verifica che l'applicazione funzioni su una piattaforma cloud diversa
  • Testare l'applicazione nell'ambiente interno e quindi distribuirla in un ambiente cloud
Test di rete
  • Protocollo di test responsabile della connettività cloud
  • Verificare l'integrità dei dati durante il trasferimento dei dati
  • Verificare la corretta connettività di rete
  • Controlla se i pacchetti vengono rilasciati da un firewall su entrambi i lati
Test di carico e stress
  • Verificare la presenza di servizi quando più utenti accedono ai servizi cloud
  • Identificare il difetto responsabile del guasto hardware o ambientale
  • Verificare se il sistema non riesce a causa dell'aumento del carico specifico
  • Controlla come cambia un sistema nel tempo sotto un certo carico

Sfide nel test del cloud

Sfida n. 1: sicurezza dei dati e privacy

Essendo le applicazioni cloud di natura multi-tenant, il rischio di furto di dati rimane sempre. Come strategia di test del cloud, gli utenti dovrebbero avere una garanzia sulla sicurezza dei propri dati da parte dei fornitori.

Sfida n. 2: periodo di preavviso breve

Il fornitore di servizi cloud concede un breve periodo di preavviso di (1-2 settimane) ai clienti esistenti in merito agli aggiornamenti. Questo è un grosso problema quando si convalidano manualmente le modifiche all'applicazione SaaS.

Sfida n. 3: convalida della compatibilità dell'interfaccia

Con un aggiornamento nel provider di servizi cloud, a volte viene aggiornata anche l'interfaccia esterna, il che rappresenta una sfida per alcuni abbonati che sono abituati all'interfaccia precedente. Gli abbonati Cloud (SaaS) devono assicurarsi che gli utenti possano scegliere la versione dell'interfaccia che desiderano utilizzare

Sfida n. 4: migrazione dei dati

La migrazione dei dati da un provider cloud a un altro è una sfida enorme poiché entrambi i provider possono avere schemi di database diversi e richiede molto impegno per comprendere i campi di dati, le relazioni e il modo in cui vengono mappati nell'applicazione SaaS

Sfida n. 5 : integrazione delle applicazioni aziendali

L'integrazione delle applicazioni aziendali richiede la convalida dell'integrazione dei dati sia dei dati in uscita che in entrata, dalla rete client all'applicazione SaaS e viceversa. La privacy dei dati richiede una convalida approfondita al fine di garantire agli abbonati SaaS la sicurezza e la privacy dei dati.

Sfida n. 6 : simulazione del test di aggiornamento in tempo reale

La sfida più grande del test del cloud è garantire che gli aggiornamenti live non influiscano sugli utenti SaaS esistenti connessi

Test cloud vs test convenzionali

Parametri di test Test convenzionali Test sul cloud
Obiettivo del test primario
  • Verifica interoperabilità, compatibilità, usabilità.
  • Verifica la qualità della funzione e delle prestazioni del sistema in base alle specifiche fornite
  • Verifica la qualità delle prestazioni e delle funzioni di SaaS, Cloud e applicazioni sfruttando un ambiente cloud
Costi dei test
  • I costi rimangono elevati a causa dei requisiti hardware e software
  • Devi solo pagare le spese operative. Paga solo quello che usi.
Simulazione di prova
  • Dati sul traffico online simulato
  • Accesso utente in linea simulato
  • Simulazione di dati sul traffico online
  • Simulazione dell'accesso utente in linea
Test funzionali
  • Convalida delle funzioni (unità e sistema) e delle sue caratteristiche
  • Test della funzione dell'applicazione end-to-end su SaaS o Cloud
Ambiente di test
  • Un ambiente di test predefinito e configurato in un laboratorio di test
  • Un ambiente di test pubblico aperto con diverse risorse di elaborazione
Test d'integrazione
  • Test basati su componenti, architettura e funzioni
  • Test di integrazione basato su SaaS
Test di sicurezza
  • Test delle funzionalità di sicurezza basate su processo, server e privacy
  • Test delle funzionalità di sicurezza basate su cloud, SaaS e test in tempo reale nel cloud dei fornitori
Test di prestazioni e scalabilità
  • Ha eseguito un ambiente di test fisso
  • Applica dati di test online sia in tempo reale che virtuali