Integrazione con Maven e Jenkins Selenium Tutorial

In cosa c'è Jenkins? Selenium?

Jenkins è il principale strumento di integrazione continua open source sviluppato da Hudson Lab. È multipiattaforma e può essere utilizzato su Windows, Linux, MacOS e Solaris ambienti. Jenkins è scritto Java. L'utilizzo principale di Jenkin è monitorare qualsiasi lavoro che può essere il checkout SVN, cron o qualsiasi stato dell'applicazione. Esegue azioni preconfigurate quando si verifica un passaggio particolare nei lavori.

Caratteristiche importanti di Jenkins

  • Supporto per la modifica: Jenkins genera l'elenco di tutte le modifiche apportate ai repository come SVN.
  • Collegamenti permanenti: Jenkins fornisce collegamenti diretti alla build più recente o alla build non riuscita che possono essere utilizzati per facilitare la comunicazione
  • Installazione: Jenkins è facile da installare utilizzando il file di installazione diretta (exe) o il file war da distribuire utilizzando il server delle applicazioni.
  • Integrazione e-mail: Jenkins può essere configurato per inviare via e-mail il contenuto dello stato della build.
  • Configurazione facile: Configurare varie attività su Jenkins è semplice.
  • TestNG test: Jenkins può essere configurato per eseguire il test di automazione basato su Test dopo ogni build di SVN.
  • Più VM: Jenkins può essere configurato per distribuire la build su più macchine.
  • Realizzazione del progetto: Jenkins documenta i dettagli del jar, la versione del jar e la mappatura dei numeri di build e jar.
  • plugin: 3rd Il plug-in party può essere configurato in Jenkins per utilizzare funzionalità e funzionalità aggiuntive.

Perché Jenkins e Selenium?

  • corsa Selenium tests in Jenkins ti consente di eseguire i test ogni volta che il tuo software cambia e di distribuire il software in un nuovo ambiente quando i test vengono superati.
  • Jenkins può programmare l'esecuzione dei test in orari specifici.
  • È possibile salvare la cronologia di esecuzione e i rapporti di test.
  • Jenkins supporta Maven per la creazione e Collaudo un progetto in continua integrazione.

In cosa consiste Maven Selenium?

Maven è un potente strumento di gestione di progetti/costruzioni, basato sul concetto di POM (Project Object Model) che include informazioni sul progetto e informazioni di configurazione per Maven come directory di costruzione, directory di origine, dipendenza, directory di origine di test, obiettivi, plug-in, ecc. .

Perché Maven & Jenkins

Selenium WebDriver è ottimo per l'automazione del browser. Ma, quando lo si utilizza per testare e costruire un framework di test, sembra sottodimensionato. Integrazione di Maven con Selenium fornisce i seguenti vantaggi
Apache Maven fornisce supporto per la gestione dell'intero ciclo di vita di un progetto di test.

  • Maven viene utilizzato per definire la struttura del progetto, le dipendenze, la creazione e la gestione dei test.
  • Utilizzando pom.xml(Maven) è possibile configurare le dipendenze necessarie per creare test ed eseguire codice.
  • Maven scarica automaticamente i file necessari dal repository durante la creazione del progetto.

Come installare Maven e utilizzarlo con TestNG Selenium

Ecco i passaggi per installare Maven e utilizzarlo TestNG Selenium

Per questo tutorial utilizzeremo Eclipse (Giunone) IDE per Java Sviluppatori da configurare Selenium Progetto WebDriver. Inoltre, dobbiamo aggiungere il plugin m2eclipse a Eclipse per facilitare il processo di compilazione e creare il file pom.xml.
Aggiungiamo il plugin m2eclipse a Eclipse con i seguenti passaggi:

Passo 1) In Eclipse IDE, seleziona Aiuto | Installa nuovo software da Eclipse Menu principale.

Passo 2) Nella finestra di dialogo Installa, inserisci l'URL https://www.eclipse.org/m2e/. Selezionare Lavora con e il plugin m2e come mostrato nello screenshot seguente:

Installa Maven e usalo con TestNG Selenium

Passo 3) Fare clic su Avanti pulsante e terminare l'installazione.

Configurazione Eclipse con Maven

Con il plugin m2e installato, ora dobbiamo creare un progetto Maven.

Passo 1) In Eclipse IDE, crea un nuovo progetto selezionando Compila il | New | Altro da Eclipse menu.

Passo 2) Sulla New finestra di dialogo, selezionare Maven | Progetto Maven e fare clic su Avanti

Installa Maven e usalo con TestNG Selenium

Passo 3) Sulla Nuovo progetto Maven finestra di dialogo selezionare il Crea un progetto semplice e fare clic su Avanti

Installa Maven e usalo con TestNG Selenium

Passo 4) Inserisci WebdriverTest in ID gruppo: e ID artefatto: e fare clic su Fine

Installa Maven e usalo con TestNG Selenium

Passo 5) Eclipse creerà WebdriverTest con la seguente struttura:

Installa Maven e usalo con TestNG Seleniuml

Passo 6) Fai clic destro su Libreria di sistema JRE e seleziona la Proprietà a Confronto opzione dal menu.

Installa Maven e usalo con TestNG Selenium

Sulla Proprietà per la libreria di sistema JRE finestra di dialogo, assicurati JRE predefinito dell'area di lavoro è selezionato e fare clic su OK

Installa Maven e usalo con TestNG Selenium

Passo 7). Selezionare pom.xml da Esplora progetti..

Installa Maven e usalo con TestNG Selenium

Il file pom.xml si aprirà nella sezione Editor

Installa Maven e usalo con TestNG Selenium

Passo 8) Aggiungere il Selenium, Esperto di, TestNG, giunzione dipendenze da pom.xml nel file nodo:

	<dependencies>			
        <dependency>				
             <groupId>junit</groupId>								
             <artifactId>junit</artifactId>								
             <version>3.8.1</version>								
             <scope>test</scope>								
        </dependency>				
        <dependency>				
            <groupId>org.seleniumhq.selenium</groupId>								
            <artifactId>selenium-java</artifactId>								
            <version>2.45.0</version>								
		</dependency>				
        <dependency>				
            <groupId>org.testng</groupId>								
            <artifactId>testng</artifactId>								
            <version>6.8.8</version>								
            <scope>test</scope>							  			
       </dependency>				
</dependencies>

Passo 9) Crea un nuovo TestNG Classe. Inserisci il nome del pacchetto come "esempio" e "NewTest" nel file Nome: casella di testo e fare clic su Finitura pulsante come mostrato nello screenshot seguente:

Installa Maven e usalo con TestNG Selenium

Passo 10). Eclipse creerà la classe NewTest come mostrato nello screenshot seguente:

Installa Maven e usalo con TestNG Selenium

Passo 11) Aggiungi il seguente codice a NuovoTest classe:

Questo codice verificherà il titolo di Guru99 Selenium Pagina

package example;		

import org.openqa.selenium.By;		
import org.openqa.selenium.WebDriver;		
import org.openqa.selenium.firefox.FirefoxDriver;		
import org.testng.Assert;		
import org.testng.annotations.Test;	
import org.testng.annotations.BeforeTest;	
import org.testng.annotations.AfterTest;		
public class NewTest {		
	    private WebDriver driver;		
		@Test				
		public void testEasy() {	
			driver.get("https://demo.guru99.com/test/guru99home/");  
			String title = driver.getTitle();				 
			Assert.assertTrue(title.contains("Demo Guru99 Page")); 		
		}	
		@BeforeTest
		public void beforeTest() {	
		    driver = new FirefoxDriver();  
		}		
		@AfterTest
		public void afterTest() {
			driver.quit();			
		}		
}	

Passo 12) Fare clic con il tasto destro su WebdriverTest e selezionare TestNG | Convertire in TestNG.
Eclipse creerà testng.xml che dice che è necessario eseguire un solo test con quel nome NuovoTest come mostrato nello screenshot seguente:

Installa Maven e usalo con TestNG Selenium

Aggiorna il progetto e assicurati che il file appaia nell'albero Esplora pacchetti (tasto destro sul progetto – Aggiorna).

Installa Maven e usalo con TestNG Selenium

Passo 13) Ora devi eseguire il test attraverso questo testng.xml.

Quindi, vai al Esegui configurazioni e creare un nuovo lancio TestNG, seleziona il progetto e il campo Suite as testng.xml e fare clic su Esegui

Installa Maven e usalo con TestNG Selenium

Assicurati che la build sia stata completata correttamente.

Passo 14). Inoltre, dobbiamo aggiungere

  1. plugin-compilatore-maven
  2. plug-in-sicuro
  3. testng.xml

a pom.xml.

Il plug-in maven-surefire viene utilizzato per configurare ed eseguire test. Qui il plugin viene utilizzato per configurare testing.xml per TestNG testare e generare rapporti di prova.

Il maven-compiler-plugin viene utilizzato per aiutare nella compilazione del codice e nell'utilizzo della particolare versione JDK per la compilazione. Aggiungere tutte le dipendenze nel seguente frammento di codice, a pom.xml in nodo:

Installa Maven e usalo con TestNG Selenium

Passo 15) Per eseguire il the test nel ciclo di vita Maven, fare clic con il pulsante destro del mouse su WebdriverTest e selezionare Correre come | Prova dell'esperto. Maven eseguirà il test dal progetto.

Installa Maven e usalo con TestNG Selenium

Assicurati che la build sia stata completata correttamente.

Come integrare Jenkins con Selenium webdriver

Ecco i passaggi per installare Jenkins e configurarlo per eseguire Maven con TestNg Selenium

SERVIZIO DI

Passo 1) Vai su http://jenkins-ci.org/ e scarica il pacchetto corretto per il tuo sistema operativo. Installa Jenkins.

Integrazione di Jenkins con Selenium webdriver

Passo 2) Decomprimi Jenkins nella cartella specificata. Esegui il file exe come mostrato nella seguente schermata:

Integrazione di Jenkins con Selenium webdriver

Passo 3) In Installazione di Jenkins 1.607 fare clic sulla finestra Avanti pulsante.

Integrazione di Jenkins con Selenium webdriver

Passo 4) Fare clic su Installazione pulsante alla fine.

Integrazione di Jenkins con Selenium webdriver

Passo 5) Al termine dell'installazione, accedere alla dashboard Jenkins (http://localhost:8080 per impostazione predefinita) nella finestra del browser.

Integrazione di Jenkins con Selenium webdriver

Passo 6) Clicca sul Nuovo elemento collegamento per creare un lavoro CI.

Integrazione di Jenkins con Selenium webdriver

Passo 7) Selezionare il pulsante di scelta del progetto Maven come mostrato nello screenshot seguente:

Integrazione di Jenkins con Selenium webdriver

Utilizzando la creazione a Progetto Maven opzione, Jenkins supporta la creazione e il test di progetti Maven.

Passo 8) Fare clic sul pulsante OK. Un nuovo lavoro con il nome "WebdriverTest" viene creato in Jenkins Dashboard.

Integrazione di Jenkins con Selenium webdriver

Passo 9) Vai su Gestisci Jenkins => Configura sistema come mostrato nello screenshot seguente.

Integrazione di Jenkins con Selenium webdriver

Fare clic su Installazioni JDK e configurare JDK come nello screenshot seguente:

Integrazione di Jenkins con Selenium WebDrive

Passo 10) Vai Costruiamo sezione del nuovo lavoro.

  • Nel POM radice casella di testo, inserisci il percorso completo di pom.xml
  • Nella sezione Obiettivi e opzioni, inserisci "test pulito"
  • Integrazione di Jenkins con Selenium webdriver

Passo 11) Fare clic su APPLICA pulsante.

Integrazione di Jenkins con Selenium webdriver

Passo 12) Nella pagina del progetto WebdriverTest, fare clic su Costruire Ora collegamento.

Integrazione di Jenkins con Selenium webdriver

Maven costruirà il progetto. Avrà allora TestNG eseguire i casi di test.

Passo 13) Una volta completato il processo di creazione, nella Jenkins Dashboard fare clic su WebdriverTest progetto

Integrazione di Jenkins con Selenium webdriver

Passo 14) La pagina del progetto WebdriverTest mostra la cronologia delle build e i link ai risultati, come mostrato nello screenshot seguente:

Integrazione di Jenkins con Selenium webdriver

Passo 15) Fare clic sul collegamento "Ultimo risultato del test" per visualizzare i risultati del test come mostrato nello screenshot seguente:

Integrazione di Jenkins con Selenium webdriver

Passo 16). Seleziona una build specifica e vedrai lo stato attuale facendo clic su "uscita della console".

Integrazione di Jenkins con Selenium webdriver

Pianificazione di Jenkins per l'esecuzione automatica.

Pianificazione delle build (Selenium Tests) è una delle funzionalità importanti di Jenkins in cui attiva automaticamente la compilazione, in base a criteri definiti. Jenkins offre diversi modi per attivare il processo di compilazione nella configurazione Build Trigger.

Per esempio:
Inserisci 0 23 * * * nella casella di testo Schedule come mostrato nello screenshot seguente. Questo avvierà il processo di build ogni giorno alle 11 pm

Jenkins per l'esecuzione automatica

Usare Jenkings senza Maven

Per eseguire lo script TestNg puro in Jenkins, immettere quanto segue nella build

D:>java -cp “Percorsocartellalib\lib\*;Percorsocartellabin\bin” org.testng.TestNG testng.xml

Jenkins per l'esecuzione automatica

  • Fare clic sul pulsante Salva.
  • Nota: il percorso effettivo della cartella lib e bin deve essere aggiunto al comando precedente.
  • Dopo aver salvato il comando, Jenkins creerà il progetto in un tempo predefinito e questo comando verrà eseguito utilizzando TestNG.
  • Il risultato verrà archiviato in un file HTML di report personalizzato che può essere inviato via e-mail con una configurazione Jenkin
  • L'output del codice sarà

Jenkins per l'esecuzione automatica

Vantaggi dell'utilizzo di Jenkins

  1. Individuazione anticipata dei problemi: i bug possono essere rilevati nella fase iniziale dello sviluppo del software
  2. Integrazione automatica: non è richiesto alcuno sforzo separato per integrare tutte le modifiche
  3. Installer: un sistema distribuibile disponibile in qualsiasi fase dello sviluppo
  4. Record: record di creazione delle parti mantenuti
  5. Supporto e plugin: uno dei motivi della popolarità di Jenkin è la disponibilità di un ampio supporto da parte della comunità. Inoltre, sono disponibili molti plugin già pronti che ti aiutano a espandere le sue funzionalità.

Riassumi questo post con: