web application testing complete guide
Una guida completa al test di applicazioni Web: come testare un sito Web
Dobbiamo tutti concordare sul fatto che nel mondo competitivo e in continua evoluzione di oggi, Internet è diventato parte integrante delle nostre vite.
La maggior parte di noi prende le proprie decisioni cercando le informazioni su Internet in questi giorni, quindi l'hosting di un sito Web non è più facoltativo ma obbligatorio per tutti i tipi di attività. È il primo passo per diventare e rimanere rilevanti nel mercato.
Avere solo un sito web non è sufficiente. È necessaria un'organizzazione per sviluppare un sito Web che sia informativo, accessibile e di facile utilizzo. Per mantenere tutte queste qualità, il sito Web dovrebbe essere ben testato e questo processo di test di un sito Web è noto come test Web.
Cosa imparerai:
- Che cos'è il test Web?
- Elenchi di controllo per test web
- Tipi di test web
- Punti da considerare durante il test di un sito web
- Scenari di test di esempio per testare un'applicazione Web
- Domande frequenti sul test web
- Il sito web funziona come previsto?
- L'utente finale troverà il sito web facile da navigare?
- Il sito web è accessibile su diversi dispositivi posseduti dagli utenti finali?
- Il sito web è sufficientemente protetto?
- Le prestazioni del sito web sono all'altezza?
- I dati inseriti in un sito Web vengono archiviati in modo accurato e persistono tra le sessioni?
- Conclusione
- Lettura consigliata
Che cos'è il test Web?
Il test Web è una pratica di test del software per testare siti Web o applicazioni Web per potenziali bug. È un test completo delle applicazioni basate sul Web prima di essere pubblicate.
Un sistema basato sul Web deve essere controllato completamente dall'inizio alla fine prima di essere disponibile per gli utenti finali.
Eseguendo il test del sito Web, un'organizzazione può assicurarsi che il sistema basato sul Web funzioni correttamente e possa essere accettato dagli utenti in tempo reale.
Il design e le funzionalità dell'interfaccia utente sono i capitani del test del sito web.
Elenchi di controllo per test web
1) Test di funzionalità
2) Test di usabilità
3) Test dell'interfaccia
4) Test di compatibilità
5) Test delle prestazioni
6) Test di sicurezza
Strumenti consigliati per mettere in pratica i concetti di test web menzionati in questa pagina:
# 1) LoadNinja
LoadNinja ti consente di caricare il test della tua applicazione web con browser reali su larga scala, utilizzando script di test che possono essere riprodotti immediatamente dopo la registrazione, producendo dati sulle prestazioni basati su browser utilizzabili per isolare i problemi ed eseguire il debug degli errori in tempo reale.
=> Visita il sito web di LoadNinja
# 2) LambdaTest
LambdaTest è una piattaforma di test cross-browser scalabile basata su cloud progettata per offrire tutti i siti Web e i test di app Web necessari per l'infrastruttura cloud.
La piattaforma LambdaTest aiuta a garantire che gli elementi della tua app web (come JavaScript, CSS, HTLM5, video ... ecc.) Vengano visualizzati senza problemi su ogni browser web desktop e mobile con il supporto di test manuali, visivi e automatizzati. Con LambdaTest puoi accedere a oltre 2000 combinazioni di browser desktop e mobili sul cloud.
=> Visita il sito web LambdaTest# 1) Test di funzionalità
Test per: tutti i collegamenti nelle pagine Web, connessione al database, moduli utilizzati per inviare o ottenere informazioni dall'utente nelle pagine Web, test dei cookie, ecc.
Guarda tutti i link:
- Testare i collegamenti in uscita da tutte le pagine al dominio specifico in prova.
- Prova tutti i link interni.
- Testare i collegamenti che saltano sulla stessa pagina.
- I collegamenti di prova vengono utilizzati per inviare e-mail all'amministratore o ad altri utenti dalle pagine web.
- Fai un test per vedere se ci sono pagine orfane.
- Infine, il controllo dei collegamenti include, controlla i collegamenti interrotti in tutti i collegamenti sopra menzionati.
Moduli di prova su tutte le pagine:
I moduli sono parte integrante di qualsiasi sito web. I moduli vengono utilizzati per ricevere informazioni dagli utenti e per interagire con essi. Quindi cosa dovrebbe essere controllato in questi moduli?
- Innanzitutto, controlla tutte le convalide su ciascun campo.
- Controlla i valori predefiniti nei campi.
- Input errati nei moduli nei campi nei moduli.
- Opzioni per creare moduli, se presenti, eliminare moduli, visualizzare o modificare i moduli.
Facciamo un esempio del progetto del motore di ricerca a cui sto lavorando. In questo progetto abbiamo passaggi di registrazione per inserzionisti e affiliati. Ogni passaggio di registrazione è diverso ma dipende dagli altri passaggi.
Quindi il flusso di iscrizione dovrebbe essere eseguito correttamente. Esistono diverse convalide di campo come ID e-mail, convalide delle informazioni finanziarie dell'utente, ecc. Tutte queste convalide devono essere verificate in test Web manuali o automatizzati.
Test dei cookie:
I cookie sono piccoli file memorizzati sulla macchina dell'utente. Questi sono fondamentalmente utilizzati per mantenere la sessione, principalmente le sessioni di accesso. Testare l'applicazione abilitando o disabilitando i cookie nelle opzioni del browser.
Verifica se i cookie sono crittografati prima di scrivere sul computer dell'utente. Se stai testando i cookie di sessione (ovvero i cookie che scadono al termine della sessione), controlla le sessioni di accesso e le statistiche degli utenti al termine della sessione. Verificare l'effetto sulla sicurezza dell'applicazione eliminando i cookie. (Presto scriverò anche un articolo separato sul test dei cookie)
Convalida il tuo HTML / CSS:
Se stai ottimizzando il tuo sito per i motori di ricerca, la convalida HTML / CSS è la più importante. Convalida principalmente il sito per errori di sintassi HTML. Controlla se il sito può essere sottoposto a scansione su diversi motori di ricerca.
Test del database:
Anche la coerenza dei dati è molto importante in un'applicazione web. Verifica l'integrità dei dati e gli errori mentre modifichi, elimini, modifichi i moduli o esegui qualsiasi funzionalità relativa al database.
Controlla se tutte le query del database vengono eseguite correttamente, i dati vengono recuperati e anche aggiornati correttamente. Maggiori informazioni sul test del database potrebbe essere un carico sul DB, lo affronteremo nel carico web o nel test delle prestazioni di seguito.
Nel testare la funzionalità dei siti Web è necessario verificare quanto segue:
Collegamenti
io. Collegamenti interni
ii. Link esterno
iii. Collegamenti di posta
iv. Collegamenti interrotti
Le forme
io. Validazione sul campo
ii. Messaggio di errore per input errato
iii. Campi facoltativi e obbligatori
Banca dati
Verranno effettuati test sull'integrità del database.
# 2) Test di usabilità
Il test di usabilità è il processo mediante il quale vengono misurate le caratteristiche di interazione uomo-computer di un sistema e vengono identificati i punti deboli per la correzione.
• Facilità di apprendimento
• Navigazione
• Soddisfazione soggettiva dell'utente
• Aspetto generale
Test per la navigazione:
Per navigazione si intende il modo in cui un utente naviga nelle pagine web, diversi controlli come pulsanti, caselle o come l'utente utilizza i collegamenti nelle pagine per navigare in pagine diverse.
I test di usabilità includono quanto segue:
- Il sito web dovrebbe essere facile da usare.
- Le istruzioni fornite dovrebbero essere molto chiare.
- Verificare se le istruzioni fornite sono perfette per soddisfare il suo scopo.
- Il menu principale dovrebbe essere fornito in ogni pagina.
- Dovrebbe essere abbastanza coerente.
Controllo del contenuto:
Il contenuto dovrebbe essere logico e di facile comprensione. Verifica la presenza di errori di ortografia. L'utilizzo di colori scuri infastidisce gli utenti e non dovrebbe essere utilizzato nel tema del sito.
tipi di funzioni c ++
È possibile seguire alcuni colori standard utilizzati per le pagine Web e la creazione di contenuti. Questi sono gli standard comunemente accettati come quello che ho menzionato sopra su fastidiosi colori, caratteri, cornici, ecc.
Il contenuto dovrebbe essere significativo. Tutti i collegamenti di testo di ancoraggio dovrebbero funzionare correttamente. Le immagini devono essere posizionate correttamente con dimensioni adeguate.
Questi sono alcuni degli standard importanti di base che dovrebbero essere seguiti nello sviluppo web. Il tuo compito è convalidare tutto per i test dell'interfaccia utente.
Altre informazioni utente per la guida utente:
Come l'opzione di ricerca, anche la mappa del sito aiuta con i file, ecc. La mappa del sito dovrebbe essere disponibile con tutti i collegamenti sui siti web con una corretta visualizzazione ad albero della navigazione. Verifica la presenza di tutti i link sulla mappa del sito.
L'opzione 'Cerca nel sito' aiuterà gli utenti a trovare facilmente e rapidamente le pagine di contenuto che stanno cercando. Questi sono tutti elementi opzionali e, se presenti, dovrebbero essere convalidati.
# 3) Test dell'interfaccia
Nei test Web, l'interfaccia lato server dovrebbe essere testata. Questo può essere fatto verificando che la comunicazione sia avvenuta correttamente. È necessario verificare la compatibilità del server con software, hardware, rete e database.
Le principali interfacce sono:
- Interfaccia server web e server applicazioni
- Interfaccia server applicazioni e server database.
Controlla se tutte le interazioni tra questi server vengono eseguite e gli errori vengono gestiti correttamente. Se il database o il server Web restituisce un messaggio di errore per qualsiasi query da parte del server delle applicazioni, il server delle applicazioni dovrebbe rilevare e visualizzare questi messaggi di errore in modo appropriato per gli utenti.
Controlla cosa succede se l'utente interrompe una transazione intermedia? Controllare cosa succede se la connessione al server web viene ripristinata nel frattempo?
# 4) Test di compatibilità
La compatibilità del tuo sito web è un aspetto di test molto importante. Vedi quale test di compatibilità eseguire:
- Compatibilità del browser
- Compatibilità del sistema operativo
- Navigazione mobile
- Opzioni di stampa
Compatibilità browser:
Nella mia carriera di test web, ho sperimentato questo come la parte più influente del test del sito web.
Alcune applicazioni dipendono molto dai browser. Browser diversi hanno configurazioni e impostazioni differenti con cui la tua pagina web dovrebbe essere compatibile.
La codifica del tuo sito web dovrebbe essere compatibile con una piattaforma cross-browser. Se stai utilizzando script java o chiamate AJAX per la funzionalità dell'interfaccia utente, eseguendo controlli di sicurezza o convalide, dai maggiore stress ai test di compatibilità del browser della tua applicazione web.
Prova le applicazioni web su diversi browser come Internet Explorer, Firefox, Netscape Navigator, AOL, Safari, browser Opera con diverse versioni.
Compatibilità OS:
Alcune funzionalità della tua applicazione web potrebbero non essere compatibili con tutti i sistemi operativi. Tutte le nuove tecnologie utilizzate nello sviluppo web come i progetti grafici e le chiamate all'interfaccia come le diverse API potrebbero non essere disponibili in tutti i sistemi operativi.
Quindi prova la tua applicazione web su diversi sistemi operativi come Windows, Unix, MAC, Linux, Solaris con diversi sistemi operativi.
Navigazione mobile:
Siamo nella nuova era tecnologica. Quindi in futuro la navigazione su dispositivi mobili sarà eccezionale. Testa le tue pagine web sui browser dei dispositivi mobili. Potrebbero esserci problemi di compatibilità anche sui dispositivi mobili.
Opzioni di stampa:
Se stai fornendo opzioni di stampa della pagina, assicurati che i caratteri, l'allineamento della pagina, la grafica della pagina, ecc., Vengano stampati correttamente. Le pagine devono adattarsi al formato della carta o alle dimensioni indicate nell'opzione di stampa.
# 5) Test delle prestazioni
L'applicazione web dovrebbe sostenere un carico pesante. Il test delle prestazioni web dovrebbe includere:
- Test di carico web
- Test di stress sul Web
Testare le prestazioni dell'applicazione a diverse velocità di connessione Internet.
Test di carico web : È necessario verificare se molti utenti accedono o richiedono la stessa pagina. Il sistema può sostenere il tempo di carico massimo? Il sito dovrebbe gestire molte richieste utente simultanee, dati di input di grandi dimensioni da parte degli utenti, connessione simultanea al DB, carico pesante su pagine specifiche, ecc.
Stress test sul Web: Generalmente stress significa allungare il sistema oltre i limiti specificati. Lo stress test Web viene eseguito per interrompere il sito provocando stress e viene verificato come il sistema reagisce allo stress e come si riprende dagli arresti anomali. Generalmente viene data importanza ai campi di input, alle aree di accesso e di registrazione.
Nelle prestazioni Web, il test della funzionalità del sito Web su diversi sistemi operativi e diverse piattaforme hardware viene controllato per verificare la presenza di errori di perdita di memoria software e hardware.
Il test delle prestazioni può essere applicato per comprendere la scalabilità del sito web o per confrontare le prestazioni nell'ambiente di prodotti di terze parti come server e middleware per un potenziale acquisto.
Velocità di connessione
Testato su varie reti come dial-up, ISDN, ecc.
Caricare
io. Qual è il no. di utenti per volta?
ii. Verificare i picchi di carico e il comportamento del sistema
iii. Una grande quantità di dati a cui accede l'utente
Fatica
io. Caricamento continuo
ii. Prestazioni di memoria, CPU, gestione dei file, ecc.
# 6) Test di sicurezza
Di seguito sono riportati alcuni dei casi di test per i test di sicurezza web:
- Prova incollando l'URL interno direttamente nella barra degli indirizzi del browser senza effettuare il login. Le pagine interne non dovrebbero aprirsi.
- Se hai effettuato l'accesso utilizzando nome utente e password e stai esplorando le pagine interne, prova a modificare direttamente le opzioni URL. Cioè Se stai controllando alcune statistiche del sito del publisher con ID sito del publisher = 123. Prova a modificare direttamente il parametro dell'ID del sito dell'URL con un ID del sito diverso che non sia correlato all'utente che ha effettuato l'accesso. A questo utente dovrebbe essere negato l'accesso per visualizzare le statistiche di altre persone.
- Prova alcuni input non validi nei campi di input come nome utente di accesso, password, caselle di testo di input e così via. Controlla la reazione del sistema a tutti gli input non validi.
- Le directory web e i file non dovrebbero essere accessibili direttamente a meno che non abbiano l'opzione di download.
- Prova il CAPTCHA per automatizzare gli accessi agli script.
- Verifica se SSL viene utilizzato per misure di sicurezza. Se utilizzato, dovrebbe essere visualizzato il messaggio corretto quando gli utenti passano da pagine HTTP: // non protette a pagine HTTPS: // protette e viceversa.
- Tutte le transazioni, i messaggi di errore e i tentativi di violazione della sicurezza devono essere registrati nei file di registro da qualche parte sul server web.
Il motivo principale per testare la sicurezza di un Web è identificare potenziali vulnerabilità e successivamente ripararle.
- Scansione in rete
- Scansione delle vulnerabilità
- Cracking delle password
- Revisione del registro
- Controllori di integrità
- Rilevamento di virus
Tipi di test web
Un sito web è classificato in molti tipi, circa 20 tipi. Tutti questi si stanno restringendo sotto il tipo statico e dinamico. Tra questi, discutiamo in dettaglio 4 tipi e i loro metodi di test. Prima di ciò, voglio solo proiettare quei tipi.
- Semplice test di siti Web statici
- Test dinamico delle applicazioni web
- Test di siti web di e-commerce
- Test di siti Web per dispositivi mobili
# 1) Sito web statico semplice
Un semplice sito Web statico visualizzerà lo stesso contenuto per tutti i visitatori che visitano il sito Web in momenti diversi. È noto anche come sito Web informativo. Su un sito Web statico, solo gli sviluppatori possono apportare modifiche anche solo al codice. Questo tipo di sito Web non avrà funzionalità importanti e dipende esclusivamente dal design dell'interfaccia utente.
Testare un semplice sito web statico è molto facile, devi considerare solo alcune cose durante il test. Alcuni di loro sono menzionati di seguito:
Punti da ricordare:
# 1) Testare il design della GUI è un must perché un sito Web statico dipende esclusivamente da esso. È necessario confrontare i file PSD approvati con la pagina Web sviluppata. Controlla che tutti gli elementi nel design dovrebbero essere presentati nella pagina sviluppata.
#Due) L'altra parte del design della GUI è controllare la dimensione del carattere, lo stile del carattere, la spaziatura e il colore, tutto è stato riprodotto.
(Questa immagine spiega il problema dell'allineamento della spaziatura nella visualizzazione desktop di un sito web.)
# 3) In secondo luogo, è necessario controllare i collegamenti (collegamenti alle pagine) per vedere se funzionano correttamente o meno. Inoltre, scopri se c'è un collegamento interrotto?
# 4) Verifica l'ortografia e il contenuto in tutte le pagine web confrontando il contenuto fornito dal cliente.
# 5) In alcuni casi l'immagine non verrà visualizzata correttamente, potrebbe rompersi o talvolta l'immagine viene duplicata, potrebbero essere visualizzate immagini errate. Deve essere controllato attentamente. Perché per un sito web statico, solo i contenuti e le immagini daranno vite.
# 6) Controlla attentamente la barra di scorrimento e, nella mia esperienza, ho riscontrato problemi con la barra di scorrimento. Il problema che dovrai affrontare è la comparsa di uno scorrimento indesiderato o la visualizzazione di pergamene nascoste (potrebbe nascondere i contenuti). I problemi di cui sopra sono applicabili sia agli scroll orizzontali che verticali.
# 7) Se è presente un modulo di contatto, verificare che funzioni correttamente inviando alcuni messaggi fittizi.
Le cose da controllare nel modulo di contatto sono:
- Il messaggio viene inviato correttamente e viene visualizzato un messaggio di successo?
- Controllare se l'e-mail ricevuta alla persona interessata nel formato corretto come previsto?
- Controllare la posta elettronica non dovrebbe finire nello spam come posta indesiderata?
- Se è attivato un trigger di posta elettronica di risposta, controllare se il mittente ha ricevuto la posta?
# 8) Controlla se si tratta di una pagina web priva di errori e convalidala con il validatore W3 o altro software correlato.
# 9) Alcune cose costanti da controllare in un sito web statico,
- Verifica che la favicon sia presente sulla barra delle schede
- L'URL dovrebbe contenere il titolo della pagina corretto
- Se sono presenti informazioni sul copyright, dovrebbero essere visualizzate
- Se c'è un modulo di contatto, Captcha è un must. (Previene la posta indesiderata)
- Controlla la velocità di caricamento del sito web. (Un sito web statico non dovrebbe richiedere molto tempo per il caricamento). Se durante il caricamento viene utilizzata un'immagine gif, traccia la sua funzionalità
Oltre a questi, ci sono cose enormi che devono essere testate nel backend di ogni sito web test di sistema , test di sicurezza, test dell'interfaccia, test di compatibilità e test delle prestazioni, ecc. Per questo, è necessario disporre di conoscenze tecniche. In un semplice sito Web statico, non troverai più funzionalità se devi eseguire anche test di funzionalità.
# 2) Applicazione web dinamica (sito web CMS)
È il tipo in cui l'utente può aggiornare e modificare regolarmente il contenuto del proprio sito web. Da qui userò la parola 'test di applicazioni web' invece di test di siti web dinamici. L'applicazione web è un file combinazione di programmazione front-end e back-end .
Il front-end sarà HTML e CSS mentre il back-end utilizza linguaggi di programmazione come PHP, Javascript e ASP ecc. Con questo backend, l'utente / cliente può aggiungere o modificare il contenuto del sito web.
Testare un'applicazione Web non è facile che testare un sito Web statico, ma non è molto difficile che testare un sito Web di e-commerce. Il test della funzionalità è la cosa più importante da eseguire durante il test di un'applicazione web. L'applicazione web può contenere funzionalità molto complicate, quindi il tester deve essere molto attento durante il test.
Ci sono due diversi tipi di applicazioni web, una è che l'utente non eseguirà alcuna azione nel front-end (cioè solo le modifiche al back-end si rifletteranno nel front-end) l'altra è l'utente finale lavorerà in primo piano -end se stesso ( per esempio accesso, registrazione, iscrizione alla newsletter e altre azioni simili). Quindi i test dovrebbero essere eseguiti in base ad esso.
Punti da ricordare:
I punti che ho menzionato nel test del sito Web statico devono essere inclusi anche durante il test di un'applicazione web. Oltre a ciò, si devono notare le seguenti cose.
# 1) Nella sezione GUI, il tooltip è obbligatorio per tutti i campi e pulsanti, l'allineamento del campo (spaziatura) deve essere eseguito correttamente, il campo / i pulsanti disabilitati devono essere disattivati, i campi / pulsanti devono essere in formato standard come in SRS, dovrebbe essere visualizzato un messaggio di errore se qualcosa va storto, pop-up il messaggio dovrebbe essere visualizzato solo al centro della pagina web, il menu a discesa non dovrebbe essere troncato.
Il tasto di scelta rapida Tab dovrebbe funzionare in tutti i campi e altro ancora.
#Due) Nella sezione delle funzionalità, se la tua applicazione web ha la funzionalità di accesso o registrazione, controlla il file convalida obbligatoria del campo , convalida del modulo (ad es. i campi numerici devono accettare solo numeri, non alfabeti), restrizione dei caratteri sui campi (ad es. è possibile inserire solo questi molti caratteri).
Limitazione di caratteri speciali e numeri negativi sui campi, test della funzionalità di posta elettronica, test del caricamento del documento (ad es. Solo il tipo di documento specificato può essere caricato ), funzionalità di timeout, funzionalità di ordinamento, javascript funziona su browser compatibili, ecc. dovrebbero essere testati.
# 3) Quando si arriva alla sezione delle funzionalità di back-end, testare il caricamento delle immagini per immagini rotte, il testo inserito nei campi funziona o meno. L'aggiornamento del back-end dovrebbe riflettere sul front-end , test di database (cioè se è possibile aggiungere nuovi campi o eliminare campi indesiderati) tutte queste cose devono essere eseguite.
Le prestazioni non sono molto necessarie per un'applicazione Web (sito Web dinamico) poiché ha molto meno contenuto. Se hai bisogno puoi farlo con gli strumenti con cui hai familiarità. Scegli uno strumento standard per le prestazioni online, se desideri eseguire semplici test delle prestazioni.
algoritmo di bubble sort c ++
# 3) Sito web di e-commerce
Un sito di e-commerce è un po 'complicato rispetto ai due precedenti. Il tester deve essere molto cauto durante il test di un sito di e-commerce. Ci sono cose enormi da controllare nei siti di e-commerce da loro copro solo alcuni dei miei problemi con i test dei siti di e-commerce.
Nella sezione GUI, è necessario controllare tutte le funzionalità come in SRS e lo stesso con la funzionalità. La funzionalità sarà quasi la stessa per tutti i siti Web commerciali.
Dal punto di vista della funzionalità è necessario controllare tutte le pagine come la pagina principale (include prodotti in vetrina, visualizzazione di offerte speciali, dettagli di accesso, funzionalità di ricerca) pagina dei dettagli del prodotto, pagina delle categorie, inoltro di un ordine, gateway di pagamento, tutto deve essere testato.
Punti da ricordare:
# 1) Controlla se il carrello viene aggiornato quando acquisti o aumenti la quantità. Controlla questa funzionalità in tutte le pagine e in tutte le circostanze.
#Due) Controlla se coupon speciali e le offerte vengono applicate agli ordini corretti e vedi che il prezzo scontato viene visualizzato o meno.
(Questa immagine spiega la spedizione gratuita e come viene applicata nella sezione pagamenti)
# 3) A volte durante l'aggiornamento di un singolo prodotto verrà moltiplicato considerando il numero di variazioni del prodotto. Quindi controlla se il singolo prodotto è visualizzato e le sue varianti sono visualizzate correttamente. (Ho affrontato questo problema)
# 4) Controlla se l'opzione del filtro funziona esattamente. Se è stato effettuato il filtraggio, in base alla categoria e al prezzo scelti?
# 5) Durante la registrazione, dovrebbe essere eseguita una super convalida. Solo il nuovo utente può registrarsi.
# 6) Se un utente esistente ha aggiunto un prodotto al carrello, la sezione della lista dei desideri durante il suo precedente accesso dovrebbe essere salvata e visualizzata anche durante il successivo accesso.
# 7) Confronta i prodotti dovrebbe funzionare confrontando i prodotti in base ad alcune specifiche assegnate nel back-end.
# 8) Controlla se il convertitore di valuta funziona correttamente. In base al paese scelto, il convertitore di valuta dovrebbe visualizzare il prezzo e le aliquote fiscali pertinenti.
(Scegliendo la lingua, la valuta verrà convertita, qui USD si intende come valore predefinito)
# 9) Generalmente molti plug-in vengono utilizzati in un sito Web di e-commerce (WordPress e simili), è necessario prestare molta attenzione. L'installazione del plug-in potrebbe entrare in conflitto o influenzare qualsiasi altra funzionalità principale. Quindi segui l'installazione dei plug-in e il suo utilizzo.
# 10) Verifica se l'opzione di condivisione social funziona o meno sul singolo prodotto.
#undici) Il costo di spedizione dovrebbe essere generato in base alla regione selezionata. E controlla anche la generazione dell'aliquota fiscale. (Potrebbe causare alcuni problemi legali durante l'acquisto da parte degli utenti finali).
(In questa immagine la spedizione e l'aliquota fiscale sono calcolate per la regione Francia)
# 12) Il gateway di pagamento dovrebbe funzionare solo se vengono forniti i dettagli della carta valida. La convalida deve essere applicata al numero di carta e al numero di codice CCV. (È meglio mantenere la convalida sul campo del numero della carta stesso).
# 13) La generazione di e-mail su ogni processo durante l'acquisto dovrebbe avvenire (registrazione, ordine del prodotto, pagamento riuscito, ordine annullato, ordine ricevuto e altri trigger di e-mail se presenti).
# 14) Controlla la chat dal vivo con alcune e-mail scomode.
Nota: Generalmente il sito web di e-commerce non sarà sviluppato per la compatibilità mobile e quando si arriva alla versione mobile verrà generata un'app. In alcuni casi, non creeranno un'app, ma verrà creato un sito Web compatibile con dispositivi mobili. In questi casi, è necessario controllare attentamente per sapere se mancano funzionalità e deviazioni dell'interfaccia utente.
Questi sono alcuni dei problemi che ho affrontato e notato durante il test di un sito Web di e-commerce. Oltre a questo, devi controllare tutte le cose generali relative a un sito di e-commerce.
# 4) Sito web mobile
Prima di tutto, parliamo chiaramente di un sito web per cellulari. Generalmente le persone pensano che sia un sito Web mobile che un'applicazione mobile siano la stessa cosa, ma in realtà un sito Web mobile è sviluppato con pagine HTML e può essere visualizzato solo con una connessione Internet.
Ma l'app mobile non è altro che un'applicazione che può essere scaricata e utilizzata in seguito senza una connessione Internet. Qui molti di noi si confondono e sollevano una domanda Qual è la differenza tra sito web mobile e sito web reattivo?
Un sito Web reattivo significa adattare il contenuto alle dimensioni del dispositivo mobile invece di creare una versione mentre un sito Web mobile sta creando una nuova versione che non è una versione desktop di riflessione. Nel sito web per dispositivi mobili, avrai solo pagine limitate e le funzionalità indesiderate vengono rimosse qui.
Il test di un sito Web per dispositivi mobili è piuttosto noioso rispetto ad altri tipi di siti Web. Avrà design separati e dovrai stare attento durante il test delle funzionalità.
Punti da ricordare:
Punti importanti da considerare durante il test di un sito web per dispositivi mobili:
- Di solito useremo un emulatore per testare un sito web per dispositivi mobili e possiamo ottenere risultati ideali, ma preferisco sempre che tu provi su dispositivi reali. Ho riscontrato molti problemi durante il test su dispositivi reali (in particolare dispositivi Apple). Le specifiche del dispositivo reale possono entrare in conflitto con le pagine web sviluppate.
(Questa immagine spiega i test del simulatore e il problema di backline che appare in esso.)
- La GUI e il test di usabilità sono più importanti in quanto non riflettono la versione desktop.
- Le prestazioni sono un altro fattore importante da considerare per il test del sito web per dispositivi mobili. È possibile tenere traccia dei problemi relativi alle prestazioni quando si esegue il test sui dispositivi reali.
- Verificare se la navigazione dei normali collegamenti Web da dispositivo mobile viene attivata da un collegamento mobile.
- Controlla lo scorrimento della pagina, la navigazione della pagina, il troncamento del testo, ecc. Sul sito web per dispositivi mobili.
I migliori strumenti di test web
Esiste un'ampia gamma di strumenti di test disponibili per il test delle app Web.
selenio trova elemento dal selettore css
=> Controlla questo elenco completo degli strumenti di test delle applicazioni Web più diffusi.
Punti da considerare durante il test di un sito web
I siti web sono essenzialmente applicazioni client / server - con server web e client 'browser'.
Occorre tenere in considerazione le interazioni tra Pagine HTML, comunicazioni TCP / IP, connessioni Internet, firewall, applicazioni che vengono eseguite nelle pagine web (come applet, javascript, applicazioni plug-in) e applicazioni che vengono eseguite sul lato server (come script CGI, interfacce di database, applicazioni di registrazione, generatori di pagine dinamiche, asp, ecc.).
Inoltre, esiste un'ampia varietà di server e browser con varie versioni di ciascuno. Includono differenze piccole ma talvolta significative tra loro in termini di variazioni nelle velocità di connessione, tecnologie in rapida evoluzione e molteplici standard e protocolli. Il risultato finale di cui i test per i siti Web possono diventare un grande sforzo continuo.
Scenari di test di esempio per testare un'applicazione Web
Di seguito vengono fornite alcune altre considerazioni da includere durante il test di un sito Web .
- Qual è il carico previsto sul server (ad es. Numero di hit per unità di tempo)?
- Che tipo di prestazioni è richiesto in ciascuna condizione di carico (come il tempo di risposta del server Web, i tempi di risposta delle query del database)?
- Che tipo di strumenti saranno necessari per i test delle prestazioni (come strumenti di test di carico web, altri strumenti già interni che possono essere adattati, strumenti di download di robot web, ecc.)?
- Chi è il pubblico di destinazione? Che tipo di browser useranno? Che tipo di velocità di connessione useranno? Sono all'interno di organizzazioni (quindi probabilmente con velocità di connessione elevate e browser simili) o a livello di Internet (quindi con un'ampia varietà di velocità di connessione e tipi di browser)?
- Che tipo di prestazioni ci si aspetta dal lato client (ad esempio, quanto velocemente devono apparire le pagine, quanto velocemente devono caricare ed eseguire animazioni, applet, ecc.)?
- Saranno consentiti i tempi di inattività per la manutenzione / gli aggiornamenti del server e dei contenuti? In caso affermativo, quanto?
- Che tipo di protezione (firewall, crittografia, password e così via) sarà richiesta e cosa dovrebbe fare? Come può essere testato?
- Quanto devono essere affidabili le connessioni Internet del sito? E in che modo ciò influisce sul sistema di backup o sui requisiti e sui test di connessione ridondante?
- Quale processo sarà richiesto per gestire gli aggiornamenti ai contenuti del sito web?
- Quali sono i requisiti per mantenere, tracciare e controllare il contenuto della pagina, la grafica, i collegamenti, ecc.?
- Quale specifica HTML verrà rispettata? Quanto rigorosamente? Quali varianti saranno consentite per i browser mirati?
- Ci saranno requisiti standard per l'aspetto della pagina e / o la grafica in un sito o in parti di un sito?
- Come verranno convalidati e aggiornati i collegamenti interni ed esterni? E quante volte? succederà?
- È possibile eseguire test sul sistema di produzione o sarà necessario un sistema di test separato?
- Come si devono tenere in considerazione la memorizzazione nella cache del browser, le variazioni nelle impostazioni delle opzioni del browser, la variabilità della connessione remota e i problemi di 'congestione del traffico' Internet nel mondo reale?
- Quanto sono estesi o personalizzati i requisiti di registrazione e reporting del server; sono considerati parte integrante del sistema e necessitano di test?
- Come devono essere mantenuti, tracciati, controllati e testati programmi CGI, applet, javascript, componenti ActiveX, ecc.?
- Le pagine devono contenere un massimo di 3-5 schermate a meno che il contenuto non sia altamente focalizzato su un singolo argomento. Se più grande, fornire collegamenti interni all'interno della pagina.
- I layout di pagina e gli elementi di design devono essere coerenti in tutto il sito in modo che sia chiaro all'utente che si trovano ancora su un sito.
- Le pagine dovrebbero essere il più possibile indipendenti dal browser oppure le pagine dovrebbero essere fornite o generate in base al tipo di browser.
- Tutte le pagine dovrebbero avere collegamenti esterni alla pagina; non dovrebbero esserci pagine senza uscita.
- Il proprietario della pagina, la data di revisione e un collegamento a una persona o un'organizzazione di contatto dovrebbero essere inclusi in ogni pagina.
Domande frequenti sul test web
Di seguito dovrebbero essere menzionate le varie domande che vengono in mente a un tester mentre pensa a un sito web che è già sviluppato e può essere esposto al pubblico:
- Il sito web funziona come previsto?
- L'utente finale troverà il sito web facile da navigare?
- Il sito web è accessibile su diversi dispositivi posseduti dagli utenti finali?
- Il sito web è sufficientemente protetto?
- Le prestazioni del sito web sono all'altezza?
- I dati inseriti in un sito Web vengono archiviati in modo accurato e persistono tra le sessioni?
- Il sito web è ben integrato con altre interfacce nel flusso di lavoro?
- Il sito web funzionerà come previsto anche dopo essere stato pubblicato?
Per rispondere a queste domande, sono state identificate diverse tecniche di test che possono essere utilizzate per testare un'applicazione web.
Prendiamo un esempio di un sito web di e-commerce che è stato recentemente rilasciato al team di QA per il test.
Esamineremo in dettaglio ciascuna delle domande sopra specificate per comprendere l'ambito del test e vedere come è possibile eseguire il test del sito web.
Il sito web funziona come previsto?
confermare che il sito web funzioni correttamente, il controllo qualità deve eseguire test funzionali. Durante test funzionali , le diverse caratteristiche di un'applicazione devono essere convalidate rispetto ai requisiti menzionati nel documento delle specifiche funzionali.
Di seguito sono riportati alcuni scenari generici che un QA dovrebbe coprire durante l'esecuzione di test funzionali di qualsiasi sito Web anche se non sono menzionati nelle specifiche funzionali:
- Navigazione dell'utente in diverse pagine del sito Web e completamento del flusso di lavoro end-to-end
- Se l'utente può selezionare / deselezionare le caselle di controllo
- Se l'utente può selezionare i valori dai campi a discesa
- Se l'utente può selezionare / deselezionare i pulsanti di opzione
- Diversi pulsanti di navigazione come Invia, Avanti, Carica ecc. Funzionano bene
- I calendari vengono caricati correttamente e consentono all'utente di selezionare una data
- I calcoli stanno avvenendo come implementati
- La funzionalità di ricerca funziona, se presente
- Visualizzazione corretta delle informazioni
- Vari link interni ed esterni ad altre pagine
- Ordine di tabulazione corretto dei campi nelle pagine web
- I campi obbligatori e facoltativi dovrebbero essere verificati per gli input positivi e negativi
- I valori predefiniti per ogni campo Web devono essere verificati
- La funzionalità di posta elettronica è implementata per alcune azioni sul sito web
È importante che i siti web siano compatibili con i motori di ricerca. Quindi dovremmo esaminare i siti Web per la correttezza della sintassi HTML, il formato e gli standard di conformità come WS-I, ISO ed ECMA.
Considerando i cookie, che vengono utilizzati per mantenere le sessioni di accesso, il sito Web dovrebbe essere testato abilitando / disabilitando i cookie o utilizzando il dominio non corrispondente. Il test può essere eseguito anche tra le sessioni reimpostando i cookie per riportare i browser allo stato vanigliato.
Il controllo qualità dovrebbe anche verificare che i cookie del sito Web siano sempre archiviati localmente in un formato crittografato.
Considerando il nostro sito Web di e-commerce, è necessario fare clic su vari collegamenti come Moda uomo, Moda donna, Moda bambino, Accessori per la casa, Elettrodomestici, Libri, Film e musica, ecc. Disponibili su una pagina Web e verificarli se l'utente accede al pagina prevista.
Allo stesso modo, diverse funzionalità come Accesso, Registrazione, Opzione di ricerca, Filtri, Ordinamento, Aggiungi al carrello, ecc. Dovrebbero essere verificate su diverse pagine Web come Pagina di accesso, Pagina di registrazione, Pagina dei dettagli del prodotto, Carrello, Revisione dell'ordine, Pagamento, ecc. Il sito web dovrebbe essere controllato per la gestione della sessione / cookie come la scadenza della sessione e la memorizzazione della sessione, ecc.
L'utente finale troverà il sito web facile da navigare?
Il test di usabilità deve essere eseguito per misurare la facilità d'uso del sito web per un utente finale nel contesto dell'accessibilità, della ricerca e dell'utilità, ecc.
Di seguito sono riportati alcuni degli scenari di test che dovrebbero essere verificati durante l'esecuzione di test di usabilità per un sito Web:
- Il contenuto del sito web deve essere informativo, strutturato e collegato in modo logico in modo che l'utente possa comprenderlo facilmente
- I controlli della pagina Web dovrebbero essere facili da navigare per gli utenti
- Il sito web dovrebbe contenere documenti di aiuto e istruzioni caricati
- Il sito web dovrebbe avere la funzione di ricerca per comodità dell'utente finale
- Dovrebbe essere possibile accedere a / dal menu principale a tutte le pagine
- Il contenuto del sito web deve essere verificato per eventuali errori di ortografia
- Il sito web deve seguire linee guida definite nel contesto del colore di sfondo, motivo, stile, caratteri, posizionamento delle immagini, cornici, bordi, ecc.
- Il sito web dovrebbe essere abituato alla funzione di traduzione considerando il fatto che può essere consultato da utenti di diverse nazioni con diverse lingue, valute, ecc.
Pochi strumenti che possono essere utilizzati per eseguire test di usabilità lo sono Zoom utente e Riflettore .
Un sito web di e-commerce dovrebbe essere adatto ai clienti, facile da navigare e accattivante. Tutte le pagine web devono essere verificate per l'accessibilità, i caratteri, lo stile, le immagini, gli errori di ortografia e le informazioni rilevanti sul prodotto. Un sito web dovrebbe essere dotato di documenti di aiuto pertinenti e strutture di assistenza clienti.
Considerando l'aumento delle interfacce basate su touchscreen, dobbiamo convalidare l'accessibilità sia degli input chiave che degli input touch screen. Allo stesso modo, le immagini e il contenuto del sito Web dovrebbero essere convalidati per l'usabilità su schermi di dimensioni diverse (cellulari, laptop e schede, ecc.).
Il sito web è accessibile su diversi dispositivi posseduti dagli utenti finali?
Supponendo che il nostro sito web sia accessibile da una serie di utenti con un diverso set di dispositivi, dobbiamo assicurarci che il sito web funzioni bene su tutti loro senza problemi.
Per garantire lo stesso, è necessario eseguire i controlli di compatibilità del sito Web fornito con Test di compatibilità . Durante i test di compatibilità di un sito Web, si garantisce che il sito Web funzioni correttamente su browser, sistemi operativi e dispositivi diversi come laptop, telefoni cellulari, tablet, stampanti, ecc.
Compatibilità browser (test cross browser):
Il sito web dovrebbe funzionare bene con diversi browser come Microsoft Internet Explorer, Microsoft Edge, Firefox, Google Chrome, Safari e Opera. Tutte le versioni attive di questi browser devono essere verificate con le diverse funzionalità del browser attivate / disattivate.
Inoltre, durante l'esecuzione test cross-browser , Il QA dovrebbe anche verificare le prestazioni ottimali del sito web sui browser.
Compatibilità del sistema operativo (test multipiattaforma):
Per identificare potenziali problemi di esperienza dell'utente, un sito Web dovrebbe essere testato su varie piattaforme come Windows, Linux, Unix.MAC, Solaris, ecc. In modo da essere sicuri della compatibilità del sistema operativo.
Compatibilità del dispositivo (test cross-device):
Un sito Web può essere esplorato attraverso diversi dispositivi come laptop, cellulari, tablet, ecc. Con diversi sistemi operativi disponibili come iOS, Android, Windows, ecc. Pertanto, i test dovrebbero essere eseguiti anche sui dispositivi coprendo gli scenari seguenti.
- Le dimensioni dello schermo del sito web dovrebbero essere regolabili in base al dispositivo
- Un dispositivo dovrebbe essere dotato di rotazione dello schermo
- Il sito Web non dovrebbe mostrare problemi di caricamento su dispositivi diversi con velocità di rete diverse
- Verificare il comportamento del sito Web quando il dispositivo è dentro / fuori dalla portata della rete
- Verificare il comportamento del sito Web con CPU e memoria insufficienti per supportare diversi fattori di forma
Per un sito di e-commerce, il controllo di compatibilità è uno dei tipi di test più importanti. La base di clienti sarà ampia e accederà al nostro sito Web da diversi browser, sistemi operativi e dispositivi.
Considerando che le piattaforme mobili stanno diventando popolari, dovremmo garantire il caricamento del sito Web su un fattore di forma ridotto con un tempo di caricamento accettabile. È anche importante convalidare l'uso di velocità di rete diverse per garantire che sia utilizzabile per tutti i clienti.
Il sito web è sufficientemente protetto?
I test di sicurezza vengono eseguiti per scoprire le vulnerabilità in un sistema e garantire che un sito Web sia protetto.
Di seguito è riportato l'elenco di controllo che può essere verificato durante l'esecuzione dei test di sicurezza:
- Il sito web dovrebbe essere accessibile solo agli utenti autenticati
- Gli utenti del sito web dovrebbero essere in grado di eseguire solo le attività per le quali sono autorizzati
- Il sito web dovrebbe essere verificato per i campi CAPTCHA per l'identificazione dell'utente
- Le impostazioni di sicurezza del browser devono essere verificate durante il passaggio da pagine protette a pagine non protette
- La protezione del server Web dovrebbe essere presente per directory o file Web inaccessibili
- Assicurati che i file con restrizioni non vengano scaricati senza un accesso appropriato
- Le sessioni che sono diventate inattive dovrebbero essere automaticamente interrotte dopo un certo periodo di tempo
- Tutti i tentativi non validi e non autorizzati da parte degli utenti finali o errori / guasti di sistema intermittenti dovrebbero essere registrati a scopo di analisi
Strumenti come Gestione delle vulnerabilità , Veracode e Mappa SQL può essere utilizzato per eseguire test di sicurezza del tuo sito web.
Come parte del test di sicurezza, un sito di e-commerce dovrebbe essere convalidato
- Controlli di accesso al sito web.
- Qualsiasi perdita di informazioni personali dell'utente.
- Metodi di pagamento sicuri.
Le prestazioni del sito web sono all'altezza?
Per verificare le prestazioni di un sito Web, è possibile eseguire test delle prestazioni. Valuterà il comportamento di un'applicazione in una varietà di condizioni di carico di lavoro che potrebbero essere uno scenario realistico. Se il sistema diventa attivo senza condurre test delle prestazioni, potrebbe verificarsi problemi come un sistema lento o una scarsa usabilità che probabilmente influenzeranno l'immagine del marchio e le vendite sul mercato.
Un sito web può essere testato contro carico e stress.
Di seguito viene fornita la lista di controllo per i test delle prestazioni web:
- Il comportamento del sito Web deve essere osservato in condizioni di carico normali e di picco
- Le prestazioni del sito web devono essere esaminate misurando il tempo di risposta, la velocità, la scalabilità e l'utilizzo delle risorse
- Una corretta RCA (analisi della causa principale) dovrebbe essere eseguita con una soluzione se un sistema si guasta o diventa instabile in qualsiasi momento
- Eventuali problemi di latenza di rete dovrebbero essere identificati
Un sito web di e-commerce deve essere testato a fondo utilizzando una serie di utenti simulati durante le condizioni di carico normali e di picco che possono verificarsi durante la 'stagione dei saldi'.
Durante la vendita si moltiplicherebbero gli utenti che accedono al sito. Inoltre, il comportamento del sito web dovrebbe essere esaminato mentre più utenti simultanei accedono agli stessi articoli o eseguono le stesse azioni (come transazioni o ordini) sul sito web.
Sul mercato sono disponibili vari strumenti per i test delle prestazioni. Pochi lo sono LoadRunner, WinRunner, Silk Performer, JMeter, ecc.
I dati inseriti in un sito Web vengono archiviati in modo accurato e persistono tra le sessioni?
Il database è uno dei componenti critici di un'applicazione web che contiene le informazioni complete inserite attraverso un sito web. Quindi, per assicurarsi che i dati utente corretti vengano salvati nelle tabelle del database senza alcuna manipolazione e per mantenere l'integrità dei dati al di sotto delle verifiche, è necessario eseguire le verifiche.
- Verifica la coerenza dei dati nell'interfaccia utente, ad esempio l'interfaccia utente del sito Web e il database
- Verificare che le tabelle DB vengano aggiornate correttamente ogni volta che le azioni di inserimento / aggiornamento / eliminazione vengono eseguite da un'applicazione del sito Web
- Verifica il tempo di risposta alle domande tecniche e ottimizzale se necessario
- Verificare la connettività DB e le autorizzazioni di accesso
In qualità di membro del team di controllo qualità che testa il sito e-commerce, puoi eseguire le seguenti attività e convalidare le modifiche ogni volta nelle tabelle del database corrispondenti. Ciò assicurerà che l'interfaccia utente del sito Web e il database siano coerenti.
1) Effettuare un ordine per un prodotto.
2) Annullamento del prodotto.
3) Optare per la sostituzione del prodotto.
4) Optare per la restituzione del prodotto.
Il sito web è ben integrato con altre interfacce nel flusso di lavoro?
Il test a livello di interfaccia viene eseguito per verificare la corretta interazione del sito Web con diverse interfacce come Web Server e Database Server.
Durante il test dell'interfaccia, il tester deve assicurarsi che le richieste dell'applicazione vengano inviate correttamente al database e che le informazioni corrette siano visualizzate al client come output. Un webserver non dovrebbe generare eccezioni di negazione in nessun momento e il database dovrebbe sempre rimanere sincronizzato con l'applicazione.
Il sito web funzionerà come previsto anche dopo essere stato pubblicato?
Una volta che un prodotto si sposta in un ambiente di produzione, è necessario eseguire l'ispezione regolare per mantenere un controllo del controllo di qualità.
Gli scenari seguenti possono essere considerati durante la verifica del prodotto in produzione:
- I test delle applicazioni Web devono essere eseguiti periodicamente e i registri dei test devono essere salvati come prova di conformità al contratto sul livello di servizio (SLA)
- È necessario verificare se sono presenti e funzionanti sistemi di scalabilità automatica e bilanciatori del carico
- Tieni sotto controllo le esperienze degli utenti finali e cerca di scoprire difetti o attacchi dannosi che in genere passano inosservati durante i test di QA
- Monitorare il tempo di risposta del prodotto durante i picchi di carico
- Esegui casi di test a livello di edge in tempo reale per identificare errori di rete, errori di connessione o interruzioni dovute a una chiamata imprevista
Conclusione
Ho redatto questo tutorial dettagliato con i miei anni di esperienza nel testare i diversi siti Web.
Spero che questo articolo ti aiuti a comprendere i diversi aspetti del test delle applicazioni web. La prossima volta che ti siedi per scrivere un piano di test per il tuo sito web, ricordati di convalidare vari aspetti oltre la funzionalità del sito web.
Spero che questo articolo sia stato informativo per te!
Lettura consigliata
- Guida al test di sicurezza delle applicazioni Web
- Alpha test e beta test (una guida completa)
- Migliori strumenti di test del software 2021 (Strumenti di automazione del test QA)
- Guida completa al test di verifica della costruzione (test BVT)
- Test funzionale vs test non funzionale
- Tipi di test del software: diversi tipi di test con dettagli
- Guida per principianti ai test di penetrazione delle applicazioni Web
- Esercitazione sul test del data warehouse di test ETL (una guida completa)