testng process execution
Questo tutorial spiega vari tipi di processi di esecuzione in TestNG, ovvero esecuzione in batch, batch controllato, report di esecuzione del test ed esecuzione parallela:
L'esecuzione del processo in TestNG tende a far risparmiare molto tempo durante l'esecuzione di script o suite di test.
Esploriamo !!
=> Visita qui per imparare TestNG da zero.
Cosa imparerai:
Perché metodi di esecuzione del processo diversi?
Ogni volta che eseguiamo gli script o le suite di test nell'ambiente Java Eclipse, dovremmo premere il pulsante Riproduci per ogni script di test che deve essere eseguito. Questo è davvero un processo noioso e dispendioso in termini di tempo se si dispone di un numero elevato di script o suite di test.
Per ovviare a questo inconveniente, TestNG ha il concetto di raggruppare ed eseguire gli script o le suite di test in base ai diversi tipi di processi di esecuzione elencati di seguito.
- Esecuzione in batch
- Esecuzione batch controllata
- Rapporto di esecuzione del test
- Esecuzione parallela
Vediamo in dettaglio l'esecuzione di ogni processo.
Esecuzione in batch
- È il processo di esecuzione di tutti gli script o suite di test in ordine sequenziale.
- Non è necessario alcun intervento manuale per eseguire ciascuna suite di test.
Esempio:
Prerequisiti:
- Crea un progetto Selenium WebDriver con il nome del progetto TestNg_Demo.
- Installa il plugin TestNG in eclipse.
Sono stati creati due file di script di test (User e UserOperations) utilizzando le annotazioni TestNG e un file di script comune (Base_class) in cui viene scritto l'ordine di esecuzione.
Passo 1: User.java
Passo 2: UserOperations.java
Passaggio 3: Base_Class.java
Passaggio 4: Esecuzione degli script di test in Batch facendo clic con il pulsante destro del mouse sul progetto e selezionando Run As TestNG Test.
Passaggio 5: Il file XML verrà generato nella cartella di output del test con il nome del file come Default test.xml.
Passaggio 6: Aggiungere i metodi di test che appartengono a un particolare script o suite di test.
Passaggio 7: Fare clic sul pulsante Esegui e l'output verrà visualizzato nella finestra della console come mostrato di seguito.
Gli script di test sono stati eseguiti correttamente utilizzando l'elaborazione batch.
Esecuzione batch controllata
È il processo di esecuzione selettiva di un particolare modulo che contiene un gruppo di suite di test o script.
Esempio:
quale dei seguenti è uno dei framework di test più popolari?
È stato creato un modulo chiamato UserOperations. Sotto di ciò, abbiamo tre utenti chiamati rispettivamente Crea, Modifica ed Elimina. Qui, eseguiremo un'azione verificando lo script CreateUser utilizzando la classe Assert. Per questo, stiamo impostando le dipendenze per Modifica ed Elimina utenti utilizzando l'annotazione di prova 'dependOnMethods'.
Esploriamo come verificare gli script e vedere come vengono gestiti gli script dipendenti corrispondenti.
Passo 1: UserOperations. Giava
Se Crea script utente viene verificato correttamente, verranno eseguiti gli altri script di dipendenza. Oppure, gli script sarebbero falliti o addirittura saltati.
Passo 2: Aggiungere i metodi di test del modulo UserOperations nel file test.xml predefinito.
rimuove un elemento da un array java
Passaggio 3: Verifica degli script di test.
# 1) Se i messaggi attesi e effettivi sono uguali.
String expected = “create a user”; String actual = “create a user”; Assert.assertEquals (expected, actual);
L'output corrispondente verrà visualizzato nella finestra Console come mostrato di seguito.
#Due) Se i messaggi Previsto e Effettivo non sono uguali.
String expected = “create a user”; String actual = “creating an user”; Assert.assertEquals (expected, actual);
L'output corrispondente verrà visualizzato nella finestra della console.
Gli script di test in un particolare modulo (UserOperations) vengono eseguiti e verificati con successo.
Rapporto di esecuzione del test
- La generazione di report può essere eseguita utilizzando TestNG che ci aiuta a identificare lo stato (superato / non superato / ignorato) di ciascun metodo di test in un gruppo di script o suite.
- Il rapporto di prova verrà generato in formato .html.
Esempio:
Passo 1: Dopo aver eseguito gli script di test, aggiornare il progetto facendo clic con il pulsante destro del mouse e selezionando l'opzione Aggiorna. Una cartella di output di prova verrà generata automaticamente.
Passo 2: Espandendo la cartella, sotto la suite predefinita, fare clic sul file test.html predefinito.
Passaggio 3: Fare clic con il tasto destro e selezionare Apri con => Browser web
Passaggio 4: Verrà generato un report di esecuzione del test che mostra tutte le informazioni sui metodi di test in uno script.
Esecuzione parallela
- È il processo di esecuzione di più script di test contemporaneamente. Ci aiuta a risparmiare il nostro impegno di esecuzione ea coprire il numero massimo di test.
- Possiamo anche eseguire test cross-browser che renderanno l'applicazione più stabile.
- TestNG gestisce internamente i concetti di threading che ci consentiranno di eseguire il test in più thread.
Esempio:
In TestNG, tutti i metodi / classi @Test verranno eseguiti nello stesso thread. Se vogliamo eseguire i nostri metodi / classi in thread separati, dobbiamo impostare l'attributo 'parallel' per metodi / classi nel file test.xml predefinito.
Passo 1: Configura l'attributo 'Parallel' come 'metodi' nel file test.xml predefinito.
Passo 2: Parallel_Demo.java
Qui stiamo eseguendo due metodi di test in parallelo. Stiamo stampando l'ID thread, su cui il metodo thread dovrebbe essere eseguito per primo.
Passaggio 3: Fare clic sul pulsante Esegui e l'output verrà visualizzato nella console come mostrato di seguito.
Il risultato sopra mostra i due metodi che sono stati eseguiti utilizzando thread diversi. Il thread che completa l'esecuzione di un metodo, selezionerà ed eseguirà l'altro metodo di test.
Conclusione
Attraverso questo tutorial, abbiamo compreso i diversi processi di esecuzione di TestNG. Innanzitutto, abbiamo iniziato a creare un nuovo progetto Selenium WebDriver utilizzando le annotazioni TestNG e siamo passati a diversi tipi di processi di esecuzione e infine abbiamo verificato uno degli script di test utilizzando le istruzioni Assert.
Pertanto, l'esecuzione di un gran numero di script o suite di test utilizzando l'elaborazione batch è molto più semplice e fa risparmiare anche il nostro tempo di esecuzione. Qui, abbiamo implementato ed eseguito il flusso di processo di ogni tipo di esecuzione per la nostra facile comprensione.
Buona lettura!!
=> Guarda qui la semplice serie di formazione TestNG.
Lettura consigliata
- 20 domande e risposte dell'intervista TestNG più popolari
- Asserzioni in selenio utilizzando framework Junit e TestNG
- Annotazioni e listener di TestNG
- Esempio TestNG: come creare e utilizzare il file TestNG.xml
- Installazione di TestNG, programma di base e rapporti
- Tutorial TestNG: Introduzione a TestNG Framework
- Come eseguire l'esecuzione su larga scala di test Appium in parallelo
- Esecuzione del test nel test del software: processo e pianificazione esatti con esempi