Maven & Jenkins integracija sa Selenium Tutorijal

U čemu je Jenkins Selenium?

Jenkins je vodeći alat za kontinuiranu integraciju otvorenog koda koji je razvio Hudson lab. Višeplatformski je i može se koristiti na Windows, Linux, Mac OS i Solaris okruženja. Jenkins je napisan u Java. Jenkinova glavna upotreba je praćenje bilo kojeg posla koji može biti SVN checkout, cron ili bilo koje stanje aplikacije. Pokreće unaprijed konfigurirane radnje kada se dogodi određeni korak u poslovima.

Važne značajke Jenkinsa

  • Promjena podrške: Jenkins generira popis svih promjena učinjenih u spremištima kao što je SVN.
  • Stalne poveznice: Jenkins pruža izravne veze na najnoviju verziju ili neuspjelu verziju koje se mogu koristiti za jednostavnu komunikaciju
  • Instalacija: Jenkins je lako instalirati pomoću izravne instalacijske datoteke (exe) ili ratne datoteke za implementaciju pomoću poslužitelja aplikacija.
  • Integracija e-pošte: Jenkins se može konfigurirati za slanje e-poštom sadržaja statusa izgradnje.
  • Jednostavna konfiguracija: Lako je konfigurirati razne zadatke na Jenkinsu.
  • TestNG test: Jenkins se može konfigurirati za pokretanje nadogradnje testa automatizacije Testng nakon svake izgradnje SVN-a.
  • Više VM-ova: Jenkins se može konfigurirati za distribuciju izgradnje na više strojeva.
  • Izrada projekta: Jenkins dokumentira pojedinosti jar-a, verziju jar-a i mapiranje brojeva izrade i jar-a.
  • dodaci: 3rd party plugin može se konfigurirati u Jenkinsu za korištenje značajki i dodatne funkcije.

Zašto Jenkins i Selenium?

  • Trčanje Selenium testovi u Jenkinsu omogućuju vam pokretanje testova svaki put kada se vaš softver promijeni i implementaciju softvera u novo okruženje kada testovi prođu.
  • Jenkins može zakazati izvođenje vaših testova u određeno vrijeme.
  • Možete spremiti povijest izvršenja i izvješća o testiranju.
  • Jenkins podržava Maven za izgradnju i Ispitivanje projekt u kontinuiranoj integraciji.

U čemu je Maven Selenium?

Maven je moćan alat za upravljanje projektom/izgradnjom, temeljen na konceptu POM-a (Project Object Model) koji uključuje informacije o projektu i informacije o konfiguraciji za Maven kao što su direktorij izgradnje, izvorni direktorij, ovisnost, testni izvorni direktorij, ciljevi, dodaci itd. .

Zašto Maven & Jenkins

Selenium WebDriver je odličan za automatizaciju preglednika. Ali, kada ga koristite za testiranje i izgradnju okvira za testiranje, čini se da nema dovoljno snage. Integracija Maven sa Selenium pruža sljedeće pogodnosti
Apache Maven pruža podršku za upravljanje punim životnim ciklusom testnog projekta.

  • Maven se koristi za definiranje strukture projekta, ovisnosti, izgradnju i upravljanje testiranjem.
  • Pomoću pom.xml(Maven) možete konfigurirati ovisnosti potrebne za izradu testiranja i izvođenje koda.
  • Maven automatski preuzima potrebne datoteke iz repozitorija dok gradi projekt.

Kako instalirati Maven i koristiti ga s TestNG Selenium

Evo koraka za instaliranje Mavena i korištenje s njim TestNG Selenium

Za ovaj vodič koristit ćemo Eclipse (Juno) IDE za Java Programeri za postavljanje Selenium Projekt WebDriver. Osim toga, moramo dodati m2eclipse dodatak Eclipse kako biste olakšali proces izgradnje i stvorili datoteku pom.xml.
Dodajmo dodatak m2eclipse Eclipse sa sljedećim koracima:

Korak 1) In Eclipse IDE, odaberite Pomoć | Instalirajte novi softver iz Eclipse Glavni izbornik.

Korak 2) U dijaloškom okviru za instalaciju unesite URL https://www.eclipse.org/m2e/. Izaberi Raditi sa i m2e dodatak kao što je prikazano na sljedećoj snimci zaslona:

Instalirajte Maven i koristite ga s TestNG Selenium

Korak 3) Kliknite na Sljedeći gumb i dovršite instalaciju.

konfigurirati Eclipse s Mavenom

Nakon instaliranja m2e dodatka, sada moramo stvoriti Maven projekt.

Korak 1) In Eclipse IDE, kreirajte novi projekt odabirom file | Novo | Ostalo iz Eclipse Izbornik.

Korak 2) Na Novo dijaloški okvir, odaberite Maven | Projekt Maven i kliknite Dalje

Instalirajte Maven i koristite ga s TestNG Selenium

Korak 3) Na Novi projekt Maven dijaloški okvir odaberite Napravite jednostavan projekt i kliknite Dalje

Instalirajte Maven i koristite ga s TestNG Selenium

Korak 4) Unesite WebdriverTest ID grupe: i Id artefakta: i kliknite završi

Instalirajte Maven i koristite ga s TestNG Selenium

Korak 5) Eclipse će stvoriti WebdriverTest sa sljedećom strukturom:

Instalirajte Maven i koristite ga s TestNG Seleniuml

Korak 6) Desnom tipkom miša kliknite Knjižnica JRE sustava I odaberite Nekretnine opciju iz izbornika.

Instalirajte Maven i koristite ga s TestNG Selenium

Na Svojstva za knjižnicu JRE sustava dijaloški okvir, provjerite Zadani JRE za radni prostor je odabrano i kliknite OK

Instalirajte Maven i koristite ga s TestNG Selenium

Korak 7). Odabrati pom.xml iz Istraživač projekata..

Instalirajte Maven i koristite ga s TestNG Selenium

datoteka pom.xml otvorit će se u odjeljku Editor

Instalirajte Maven i koristite ga s TestNG Selenium

Korak 8) Dodaj Selenium, Maven, TestNG, Junit ovisnosti o pom.xml u čvor:

	<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>

Korak 9) Napravite novu TestNG Klasa. Unesite naziv paketa kao "primjer" i "Novi test" u Ime i Prezime: tekstualni okvir i kliknite na završiti gumb kao što je prikazano na sljedećoj snimci zaslona:

Instalirajte Maven i koristite ga s TestNG Selenium

Korak 10). Eclipse će stvoriti klasu NewTest kao što je prikazano na sljedećoj snimci zaslona:

Instalirajte Maven i koristite ga s TestNG Selenium

Korak 11) Dodajte sljedeći kod u NovoTest razred:

Ovaj kod će potvrditi titulu Guru99 Selenium Stranica

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("http://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();			
		}		
}	

Korak 12) Desnom tipkom miša kliknite na WebdriverTest i odaberite TestNG | Pretvoriti u TestNG.
Eclipse će stvoriti testng.xml koji kaže da trebate pokrenuti samo jedan test s imenom NovoTest kao što je prikazano na sljedećoj snimci zaslona:

Instalirajte Maven i koristite ga s TestNG Selenium

Ažurirajte projekt i pobrinite se da se ta datoteka pojavi u stablu Istraživač paketa (desni klik na projekt – Osvježi).

Instalirajte Maven i koristite ga s TestNG Selenium

Korak 13) Sada morate pokrenuti test kroz ovo testng.xml.

Dakle, idite na Pokreni konfiguracije i kreirajte novo pokretanje TestNG, odaberite projekt i polje Apartman as testng.xml i kliknite Pokreni

Instalirajte Maven i koristite ga s TestNG Selenium

Provjerite je li izgradnja uspješno završena.

Korak 14). Dodatno, moramo dodati

  1. maven-kompiler-plugin
  2. maven-surefire-plugin
  3. testng.xml

do pom.xml.

Dodatak maven-surefire koristi se za konfiguriranje i izvođenje testova. Ovdje se dodatak koristi za konfiguriranje testing.xml za TestNG testirati i generirati izvješća o ispitivanju.

Maven-compiler-plugin koristi se za pomoć u kompajliranju koda i korištenju određene JDK verzije za kompilaciju. Dodajte sve ovisnosti u sljedećem isječku koda u pom.xml u čvor:

Instalirajte Maven i koristite ga s TestNG Selenium

Korak 15) Za trčanje the testove u životnom ciklusu Mavena, desnom tipkom miša kliknite WebdriverTest i odaberite Trčati kao | Maven test. Maven će izvršiti test iz projekta.

Instalirajte Maven i koristite ga s TestNG Selenium

Provjerite je li izgradnja uspješno završena.

Kako integrirati Jenkins s Selenium webdriver

Evo koraka za instaliranje Jenkinsa i konfiguriranje za pokretanje Mavena s TestNg-om Selenium

Montaža

Korak 1) Idi na http://jenkins-ci.org/ i preuzmite ispravan paket za svoj OS. Instalirajte Jenkins.

Integracija Jenkinsa s Selenium webdriver

Korak 2) Raspakirajte Jenkins u navedenu mapu. Pokrenite exe datoteku kao što je prikazano na sljedećoj snimci zaslona:

Integracija Jenkinsa s Selenium webdriver

Korak 3) In Postavljanje Jenkins 1.607 kliknite na prozor Sljedeći tipku.

Integracija Jenkinsa s Selenium webdriver

Korak 4) Kliknite na Instalirati dugme na kraju.

Integracija Jenkinsa s Selenium webdriver

Korak 5) Nakon dovršetka instalacije idite na Jenkinsovu nadzornu ploču (http://localhost:8080 prema zadanim postavkama) u prozoru preglednika.

Integracija Jenkinsa s Selenium webdriver

Korak 6) Kliknite na Nova stavka vezu za stvaranje CI posla.

Integracija Jenkinsa s Selenium webdriver

Korak 7) Odaberite radio gumb projekta Maven kao što je prikazano na sljedećoj snimci zaslona:

Integracija Jenkinsa s Selenium webdriver

Korištenje Build a Projekt Maven opciju, Jenkins podržava izgradnju i testiranje Maven projekata.

Korak 8) Pritisnite gumb OK. Novi posao pod nazivom "WebdriverTest" kreiran je na Jenkins Dashboardu.

Integracija Jenkinsa s Selenium webdriver

Korak 9) Idi na Upravljaj Jenkinsom => Konfigurirajte sustav kao što je prikazano na sljedećoj snimci zaslona.

Integracija Jenkinsa s Selenium webdriver

Kliknite JDK instalacije i konfigurirajte JDK kao na sljedećoj snimci zaslona:

Integracija Jenkinsa s Selenium WebDrive

Korak 10) Idi na Izgradi dio novog posla.

  • u Korijen POM tekstni okvir, unesite puni put do pom.xml
  • U odjeljku Ciljevi i opcije unesite "čisti test"
  • Integracija Jenkinsa s Selenium webdriver

Korak 11) Kliknite na Korak po korak do prijave tipku.

Integracija Jenkinsa s Selenium webdriver

Korak 12) Na stranici projekta WebdriverTest kliknite na Izgradite sada link.

Integracija Jenkinsa s Selenium webdriver

Maven će izgraditi projekt. Tada će imati TestNG izvršite testne slučajeve.

Korak 13) Nakon što je proces izgradnje dovršen, na Jenkinsovoj nadzornoj ploči kliknite na WebdriverTest projekt

Integracija Jenkinsa s Selenium webdriver

Korak 14) Stranica projekta WebdriverTest prikazuje povijest izrade i veze na rezultate kao što je prikazano na sljedećoj snimci zaslona:

Integracija Jenkinsa s Selenium webdriver

Korak 15) Kliknite vezu "Najnoviji rezultat testa" za prikaz rezultata testa kao što je prikazano na sljedećoj snimci zaslona:

Integracija Jenkinsa s Selenium webdriver

Korak 16). Odaberite određenu verziju i vidjet ćete trenutni status klikom na “konzolni izlaz".

Integracija Jenkinsa s Selenium webdriver

Planiranje Jenkinsa za automatsko izvršenje.

Zakazivanje izgradnje (Selenium Testovi) jedna je od važnih značajki Jenkinsa gdje automatski pokreće izgradnju, na temelju definiranih kriterija. Jenkins nudi više načina za pokretanje procesa izgradnje pod konfiguracijom Build Trigger.

Na primjer:
Unesite 0 23 * * * u tekstualni okvir Raspored kao što je prikazano na sljedećoj snimci zaslona. Ovo će pokrenuti proces izgradnje svaki dan u 11 sata

Jenkins za automatsko izvršenje

Korištenje Jenkingsa bez Mavena

Za pokretanje čiste TestNg skripte u Jenkinsu unesite sljedeće u build

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

Jenkins za automatsko izvršenje

  • Kliknite gumb Spremi.
  • Napomena: Stvarni put mape lib i bin potrebno je dodati u gornju naredbu.
  • Nakon spremanja naredbe, Jenkins će izgraditi projekt u unaprijed definiranom vremenu, a ova naredba će se pokrenuti pomoću TestNG.
  • Rezultat će biti pohranjen u HTML datoteci prilagođenog izvješća koja se može poslati putem e-pošte s Jenkin konfiguracijom
  • Izlaz koda bit će

Jenkins za automatsko izvršenje

Prednosti korištenja Jenkinsa

  1. Rano otkrivanje problema – Greška se može otkriti u ranoj fazi razvoja softvera
  2. Automatska integracija – nije potreban poseban napor za integraciju svih promjena
  3. Instalater – sustav koji se može primijeniti dostupan u bilo kojoj točki razvoja
  4. Zapisi – evidencija o izradi dijelova se održava
  5. Podrška i dodaci: Jedan od razloga Jenkinove popularnosti je dostupnost velike podrške zajednice. Također, dostupno je mnogo gotovih dodataka koji vam pomažu proširiti njegovu funkcionalnost.