what is end end testing
Che cos'è il test end-to-end: Framework di test E2E con esempi
Il test end-to-end è una metodologia di test del software per testare un flusso di applicazioni dall'inizio alla fine. Lo scopo del test end to end è simulare lo scenario utente reale e convalidare il sistema sottoposto a test ei suoi componenti per l'integrazione e l'integrità dei dati.
Nessuno vuole essere conosciuto per i propri errori e la propria negligenza, e lo stesso è il caso dei tester. Quando ai tester viene assegnata un'applicazione da testare, da quel momento se ne assumono la responsabilità e l'applicazione funge anche da piattaforma per mostrare le loro conoscenze pratiche e tecniche di test.
Quindi, per descriverlo tecnicamente, per garantire che i test siano eseguiti completamente, è necessario eseguire ' Test end to end ' .
In questo tutorial, impareremo cos'è il test end to end, come è fatto, perché è necessario, quali sono le matrici utilizzate, come creare un test case end to end specifico e anche alcuni altri aspetti importanti. Impareremo anche il test del sistema e lo confronteremo con il test end-to-end.
Anche reale => Formazione end-to-end su un progetto live - Formazione QA online gratuita.
Cosa imparerai:
che cos'è un file torrent e come si apre
- Che cos'è il test end to end?
- Strumenti di test end-to-end
- Come funzionano i test end-to-end?
- Metodi di test E2E
- Perché eseguiamo test E2E?
- Framework di progettazione di test E2E
- Metriche coinvolte
- Conclusione
Che cos'è il test end to end?
Il test end-to-end è una metodologia di test del software per testare un flusso di applicazioni dall'inizio alla fine. Lo scopo di questo test è simulare lo scenario utente reale e convalidare il sistema sottoposto a test e i suoi componenti per l'integrazione e l'integrità dei dati.
Viene eseguito dall'inizio alla fine in scenari reali come la comunicazione dell'applicazione con hardware, rete, database e altre applicazioni.
Il motivo principale per eseguire questo test è determinare le varie dipendenze di un'applicazione oltre a garantire che le informazioni accurate siano comunicate tra i vari componenti del sistema. Di solito viene eseguito dopo il completamento del test funzionale e di sistema di qualsiasi applicazione.
Facciamo un esempio di Gmail:
La verifica end-to-end di un account Gmail includerà i seguenti passaggi:
- Avvio di una pagina di accesso a Gmail tramite URL.
- Accesso all'account Gmail utilizzando credenziali valide.
- Accesso alla posta in arrivo. Apertura di messaggi di posta elettronica letti e non letti.
- Comporre una nuova e-mail, rispondere o inoltrare un'e-mail.
- Apertura degli elementi inviati e controllo delle e-mail.
- Controllo delle e-mail nella cartella Spam
- Disconnessione dall'applicazione Gmail facendo clic su 'logout'
Strumenti di test end-to-end
Strumento consigliato:
# 1) TestCraft
Ti consigliamo di utilizzare uno strumento di automazione dei test end-to-end come TestCraft.
TestCraft è una piattaforma di automazione dei test Selenium senza codice. La sua rivoluzionaria tecnologia AI e l'esclusiva modellazione visiva consentono di creare ed eseguire test più rapidamente eliminando il sovraccarico di manutenzione dei test.
I tester creano scenari di test completamente automatizzati senza codifica. I clienti trovano i bug più velocemente, rilasciano più frequentemente, si integrano con l'approccio CI / CD e migliorano la qualità complessiva dei loro prodotti digitali. Tutto questo sta creando un'esperienza di test end-to-end completa.
=> Visita il sito web di TestCraft
Come funzionano i test end-to-end?
Per capire un po 'di più, scopriamolo Come funziona?
Prendi unesempiodel settore bancario. Pochi di noi devono aver provato Azioni. Quando un titolare di un conto Demat, acquista una quota, deve essere data al broker una particolare percentuale di un importo. Quando l'azionista vende quella quota, indipendentemente dal fatto che ottenga un profitto o una perdita, una determinata percentuale dell'importo viene nuovamente assegnata al broker. Tutte queste transazioni vengono riflesse e gestite nei conti. L'intero processo coinvolge la gestione del rischio.
Quando guardiamo l'esempio sopra, tenendo presente il test End-to-End, scopriremo che l'intero processo include più numeri e diversi livelli di transazioni. L'intero processo coinvolge molti sistemi che possono essere difficili da testare.
Metodi di test E2E
# 1) Test orizzontale:
Questo metodo è usato molto comunemente. Si verifica orizzontalmente nel contesto di più applicazioni. Questo metodo può essere facilmente utilizzato in una singola applicazione ERP (Enterprise Resource Planning). Prendiamo un esempio di un'applicazione basata sul web di un sistema di ordinazione online. L'intero processo includerà account, stato dell'inventario dei prodotti e dettagli di spedizione.
# 2) Test verticale:
In questo metodo, tutte le transazioni di qualsiasi applicazione vengono verificate e valutate dall'inizio alla fine. Ogni singolo livello dell'applicazione viene testato partendo dall'alto verso il basso. Prendiamo un esempio di un'applicazione basata sul web che utilizza codici HTML per raggiungere i server web. In questi casi, l'API è necessaria per generare codici SQL sul database. Tutti questi scenari di elaborazione complessi richiederanno una convalida adeguata e test dedicati. Quindi questo metodo è molto più difficile.
' Test White Box ' così come ' Test della scatola nera ' entrambi sono associati a questo test. O in altre parole, possiamo dire, questa è la combinazione dei vantaggi del test white box e del test black box. A seconda del tipo di software sviluppato, a diversi livelli, entrambe le tecniche di test, ovvero white box e black box, vengono utilizzate come e quando richiesto. Fondamentalmente, il test End to End esegue l'approccio funzionale e architettonico per qualsiasi software o programma per convalidare le funzioni di sistema.
I tester come la verifica End to End perché la scrittura di casi di test dall'utente ' La prospettiva di s e in uno scenario del mondo reale, può evitare i due errori comuni. ' manca un bug ' e ' scrivere casi di test che non verificano scenari del mondo reale ' . Ciò fornisce ai tester, un immenso senso di realizzazione.
Di seguito sono elencate alcune linee guida che dovrebbero essere tenute a mente durante la progettazione dei casi di test per l'esecuzione di questo tipo di test:
- I casi di test dovrebbero essere progettati dal punto di vista dell'utente finale.
- Dovrebbe concentrarsi sul test di alcune funzionalità esistenti del sistema.
- È necessario considerare più scenari per la creazione di più casi di test.
- È necessario creare diversi set di casi di test per concentrarsi su più scenari del sistema.
Poiché eseguiamo tutti i casi di test, lo stesso è il caso di questo test. Se i casi di test sono 'Superato', ovvero otteniamo l'output previsto, si dice che il sistema ha superato con successo il test End to End. Allo stesso modo, se il sistema non produce l'output desiderato, è necessario ripetere il test di un caso di test tenendo presente le aree di errore.
Perché eseguiamo test E2E?
Nello scenario attuale, come mostrato anche nel diagramma sopra, un moderno sistema software comprende la sua interconnessione con più sottosistemi. Ciò ha reso i sistemi software moderni molto complicati.
Questi sottosistemi di cui stiamo parlando possono essere all'interno della stessa organizzazione o in molti casi possono essere anche di organizzazioni diverse. Inoltre, questi sottosistemi possono essere in qualche modo simili o diversi dal sistema attuale. Di conseguenza, se si verifica un guasto o un guasto in un sottosistema, può influire negativamente sull'intero sistema del software portando al suo collasso.
Questi rischi maggiori possono essere evitati e controllati con questo tipo di test:
- Tenere un controllo ed eseguire la verifica del flusso di sistema.
- Aumentare le aree di copertura del test di tutti i sottosistemi coinvolti nel sistema software.
- Rileva eventuali problemi con i sottosistemi e quindi aumenta la produttività dell'intero sistema software.
Di seguito sono menzionati i file poche attività che sono incluse nel processo end to end:
- Uno studio approfondito dei requisiti per eseguire questo test.
- Corretto messa a punto di ambienti di test.
- Uno studio approfondito dei requisiti hardware e software.
- Descrizioni di tutti i sottosistemi e dei principali sistemi software coinvolti.
- Assumere i ruoli e le responsabilità per tutti i sistemi e sottosistemi coinvolti.
- Metodi di test utilizzati in questo test, nonché standard seguiti, sua descrizione.
- Progettazione di casi di test e matrice dei requisiti di tracciamento.
- Registrare o salvare i dati di input e output per ogni sistema.
Framework di progettazione di test E2E
Esamineremo tutte le 3 categorie una per una:
# 1) Funzioni utente: Le seguenti azioni dovrebbero essere eseguite come parte della creazione delle funzioni utente:
- Elenco delle caratteristiche dei sistemi software e dei loro sottosistemi interconnessi.
- Per qualsiasi funzione, tieni traccia delle azioni eseguite nonché dei dati di input e output.
- Trova le relazioni, se presenti, tra le diverse funzioni degli utenti.
- Scopri la natura delle diverse funzioni utente. se sono indipendenti o riutilizzabili.
# 2) Condizioni: Le seguenti attività dovrebbero essere eseguite come parte delle condizioni dell'edificio in base alle funzioni dell'utente:
- Per ogni funzione utente, è necessario preparare una serie di condizioni.
- Tempistica, condizioni dei dati e altri fattori che influenzano le funzioni dell'utente possono essere considerati come parametri.
# 3) Casi di test: I seguenti fattori dovrebbero essere considerati per la creazione di casi di test:
- Per ogni scenario, è necessario creare uno o più casi di test per testare ciascuna funzionalità delle funzioni utente.
- Ogni singola condizione dovrebbe essere inserita come un caso di test separato.
Metriche coinvolte
Passando alle prossime attività o metriche importanti coinvolte in questo test :
- Stato della preparazione del test case: Questo può essere tracciato sotto forma di un grafico per rappresentare l'avanzamento dei casi di test pianificati che sono in preparazione.
- Monitoraggio settimanale dell'avanzamento del test: Ciò include una rappresentazione settimanale dell'avanzamento dell'esecuzione dei casi di test. Può essere riflesso attraverso la rappresentazione percentuale per casi passati, falliti, eseguiti, non eseguiti, non validi, ecc.
- Stato e rapporto dettagliato per i difetti: Il rapporto sullo stato deve essere preparato su base giornaliera per mostrare lo stato di esecuzione dello scenario di test nonché i difetti rilevati e registrati in base alla loro gravità. Settimanalmente, dovrebbe essere calcolata la percentuale dei difetti aperti e chiusi. Inoltre, in base alla gravità e alla priorità dei difetti, lo stato dei difetti dovrebbe essere monitorato settimanalmente.
- Ambiente di test: Ciò tiene traccia della durata del tempo dell'ambiente di test assegnata nonché del tempo dell'ambiente di test effettivamente utilizzato durante l'esecuzione di questo test.
Abbiamo quasi visto tutti gli aspetti di questo test. Ora lasciaci differenziare ' Test di sistema ' e ' Test end to end ' . Ma prima lasciate che vi dia un'idea di base del 'test di sistema' in modo che possiamo facilmente distinguere tra le due forme di test del software .
Test di sistema è la forma di test che comprende una serie di test differenti il cui scopo è quello di eseguire il test completo del sistema integrato. Il test del sistema è fondamentalmente una forma di test black-box in cui l'attenzione è concentrata sul funzionamento esterno dei sistemi software dal punto di vista dell'utente, tenendo conto delle condizioni del mondo reale.
Il test del sistema prevede:
- Test di un'applicazione completamente integrata, compreso il sistema principale.
- Determina che i componenti interagiscono tra loro e all'interno del sistema.
- Verificare l'output desiderato sulla base dell'input fornito.
- Analizzare l'esperienza dell'utente durante l'utilizzo di vari aspetti dell'applicazione.
Sopra abbiamo visto la descrizione di base del test di sistema per capirlo. Ora esamineremo le differenze tra 'Test di sistema' e 'Test end to end'.
S.No. | Test end to end | Test di sistema |
---|---|---|
1 | Convalida sia il sistema software principale che tutti i sottosistemi interconnessi. | Secondo le specifiche fornite nel documento Requisiti, convalida solo il sistema software. |
Due | L'enfasi principale è sulla verifica del flusso del processo di test end-to-end. | L'enfasi principale è sulla verifica e il controllo delle caratteristiche e delle funzionalità del sistema software. |
3 | Durante l'esecuzione del test, vengono prese in considerazione tutte le interfacce, inclusi i processi di backend del sistema software. | Durante l'esecuzione del test, per il test vengono prese in considerazione solo le aree funzionali e non funzionali e le loro caratteristiche. |
4 | Il test End to End viene eseguito / eseguito dopo il completamento del test di sistema di qualsiasi sistema software. | Il test del sistema viene fondamentalmente eseguito dopo il completamento del test di integrazione del sistema software. |
5 | Il test manuale è principalmente preferito per l'esecuzione di test end to end poiché questa forma di test comporta anche il test di interfacce esterne, che a volte può essere molto difficile da automatizzare. E renderà l'intero processo molto complesso. | Sia il test manuale che quello dell'automazione possono essere eseguiti come parte del test del sistema. |
Conclusione
Spero che tu abbia imparato vari aspetti dei test end to end come i suoi processi, le metriche e la differenza tra test di sistema e test end to end.
Per qualsiasi versione commerciale del software, la verifica End to End gioca un ruolo importante in quanto testa l'intera applicazione in un ambiente che imita esattamente gli utenti del mondo reale come la comunicazione di rete, l'interazione con il database, ecc.
Per lo più, il test end-to-end viene eseguito manualmente poiché il costo dell'automazione di tali casi di test è troppo alto per essere sostenuto da ogni organizzazione. Ciò non è solo vantaggioso per la convalida del sistema, ma può anche essere considerato utile per testare l'integrazione esterna.
Facci sapere se hai domande sul test end-to-end.
Lettura consigliata
- Migliori strumenti di test del software 2021 (Strumenti di automazione del test QA)
- Differenze chiave tra il test della scatola nera e il test della scatola bianca
- Download dell'eBook Testing Primer
- Test funzionale vs test non funzionale
- Programma del corso di test del software - Piano di formazione dettagliato del corso online
- Che cos'è il test di resistenza nel test del software (esempi)
- Black Box Testing: un tutorial approfondito con esempi e tecniche
- Che cos'è il test dei componenti o il test dei moduli (impara con esempi)