Selenium Integracija s Mavenom i Jenkins

⚡ Pametni sažetak

Maven Jenkins Selenium integracija stvara automatizirani cjevovod kontinuiranog testiranja gdje Maven upravlja ovisnostima projekta i životnim ciklusom, Jenkins zakazuje i pokreće izgradnje, i Selenium izvršava testove preglednika, stvarajući ponovljivu, pouzdanu i skalabilnu end-to-end web automatizaciju.

  • ???? Uloga Mavena: Maven 3.x upravlja ovisnostima, životnim ciklusom izgradnje i dodacima putem pom.xml datoteke, uklanjajući ručno rukovanje JAR-om za Selenium projektima.
  • 🔁 Jenkins Uloga: Jenkins Rasporedi LTS-a Selenium pakete, prati promjene SCM-a i pokreće automatske regresijske radnje na svakom commitu ili noćnom cronu.
  • 🚀 Snaga cjevovoda: Kombinirajući Maven, Jenkins, Seleniumi TestNG formira kompletnu CI/CD petlju koja hvata nedostatke unutar nekoliko minuta nakon promjene koda.
  • ✅ Izvješćivanje: Surefire izvješća plus Jenkins povijest izgradnje dati tracjednostavne, djeljive rezultate testiranja s konzolnim izlazom i HTML nadzornim pločama.
  • 🧪 Poboljšanje umjetne inteligencije: Moderni AI dodaci daju prioritet pogođenim testovima, predviđaju nestabilne slučajeve i smanjuju Jenkins ciklusi povratne informacije unutra Selenium cjevovodi.

Stručnjak i Jenkins Integracija s Selenium

Što je Jenkins in Selenium?

Jenkins je vodeći alat za kontinuiranu integraciju otvorenog koda koji je izvorno razvio Hudsonov laboratorij. Višeplatformski je i radi na Windows, Linux, macOSi Solaris okruženja. Jenkins piše u Java i sada se distribuira kao Jenkins LTS za stabilnu produkcijsku upotrebu. Njegova glavna upotreba je praćenje bilo kojeg posla, što može biti SCM provjera, cron raspored ili bilo koje stanje aplikacije. Jenkins aktivira unaprijed konfigurirane akcije kada se određeni korak dogodi u poslovima.

Važne značajke Jenkins

  • Promjena podrške: Jenkins generira popis svih promjena napravljenih u repozitorijima kao što su Git ili SVN.
  • Stalne veze: Jenkins pruža izravne poveznice na najnoviju ili posljednju neuspjelu verziju, što pojednostavljuje komunikaciju tima.
  • Instalacija: Jenkins Jednostavno se instalira pomoću izvornog instalacijskog programa, WAR datoteke raspoređene na aplikacijskom poslužitelju ili Docker slike.
  • Integracija e-pošte: Jenkins može se konfigurirati za slanje sadržaja i statusa svake izrade putem e-pošte.
  • Jednostavna konfiguracija: Konfiguriranje raznih zadataka na Jenkins je jednostavno putem web nadzorne ploče.
  • TestNG Test: Jenkins može se konfigurirati za pokretanje automatiziranog testa na TestNG nakon svakog commita u repozitorij.
  • Više VM-ova: Jenkins može distribuirati izgradnje na više agentskih računala.
  • Izrada projekta: Jenkins dokumentira detalje JAR-ova, JAR verzija i karteping brojeva izrade artefakata.
  • dodaci: 3rd mogu se dodati dodaci za zabave Jenkins za proširenje značajki i dodatne funkcionalnosti.

Zašto Jenkins i Selenium?

  • Trčanje Selenium testovi u Jenkins omogućuje vam izvršavanje testova svaki put kada se softver promijeni i implementaciju softvera u novo okruženje kada testovi prođu.
  • Jenkins možete zakazati svoj Selenium testovi koji se pokreću u određeno vrijeme.
  • Možete spremiti povijest izvršavanja i izvješća o testiranju za traclakoća.
  • Jenkins podržava Maven za izgradnju i Ispitivanje projekt u kontinuiranoj integraciji.

U čemu je Maven Selenium?

Maven je moćan alat za upravljanje projektima i izgradnjama temeljen na konceptu POM-a (Project Object Model) koji uključuje informacije o projektu i konfiguracijske podatke za Maven, kao što su direktorij za izgradnju, izvorni direktorij, ovisnosti, direktorij za testni izvorni kod, ciljevi, dodaci i drugo. Maven 3.x je trenutna stabilna linija, široko korištena u Selenium okviri za testiranje.

Zašto Maven i Jenkins

Selenium WebDriver je odličan za automatizaciju preglednika. Ali, kada se koristi za testiranje i izgradnju testnog okvira, može se činiti nedovoljno moćnim. Integracija Mavena s 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 izgradnju, testiranje i pokretanje koda.
  • Maven automatski preuzima potrebne datoteke iz centralnog repozitorija tijekom izgradnje projekta.

Kako instalirati Maven i koristiti ga s TestNG Selenium

Evo su koraci za instalaciju Mavena i njegovo korištenje s TestNG Selenium.

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

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

Korak 2) U dijalogu za instalaciju unesite URL https://www.eclipse.org/m2e/. Odabrati 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 što je m2e dodatak instaliran, sada moramo kreirati Maven projekt.

Korak 1) In Eclipse IDE, kreirajte novi projekt odabirom file | Novo | Ostalo od 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 odabir dijaloga 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 U redu.

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, TestNGi 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 „NoviTest“ u Ime: 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 će kod provjeriti naslov 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("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();			
		}		
}	

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

Instalirajte Maven i koristite ga s TestNG Selenium

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

Instalirajte Maven i koristite ga s TestNG Selenium

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

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

Instalirajte Maven i koristite ga s TestNG Selenium

Pobrinite se da izgradnja uspješno završi.

Korak 14) Osim toga, moramo dodati

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

u pom.xml.

Maven-surefire-plugin se koristi za konfiguriranje i izvršavanje testova. Ovdje se dodatak koristi za konfiguriranje testing.xml datoteke za TestNG testirati i generirati izvješća o ispitivanju.

Dodatak maven-compiler-plugin koristi se za pomoć pri kompajliranju koda i korištenje određene verzije JDK-a za kompajliranje. Dodajte sve ovisnosti iz sljedećeg isječka koda u pom.xml u čvor:

Instalirajte Maven i koristite ga s TestNG Selenium

Korak 15) Za pokretanje testova u Maven životnom ciklusu, desnom tipkom miša kliknite projekt WebdriverTest i odaberite Trčati kao | Maven testMaven će izvršiti test iz projekta.

Instalirajte Maven i koristite ga s TestNG Selenium

Pobrinite se da izgradnja uspješno završi.

Kako se integrirati Jenkins sa Selenium webdriver

Evo koraka za instalaciju Jenkins LTS i konfigurirajte ga za pokretanje Mavena s TestNG Selenium.

Montaža

Korak 1) Idi na https://www.jenkins.io/download/ i preuzmite ispravnu Jenkins LTS paket za vaš OS. Instalirajte. Jenkins.

Integracija Jenkins Kontakt Selenium webdriver

Korak 2) Otvoriti rajsfešlus Jenkins u određenu mapu. Pokrenite exe datoteku kao što je prikazano na sljedećoj snimci zaslona:

Integracija Jenkins Kontakt Selenium webdriver

Korak 3) u Jenkins Postavljanje kliknite prozor Sljedeći tipku.

Integracija Jenkins Kontakt Selenium webdriver

Korak 4) Kliknite na Instalirati gumb na kraju.

Integracija Jenkins Kontakt Selenium webdriver

Korak 5) Nakon što je instalacija završena, idite na Jenkins Nadzorna ploča (zadano je http://localhost:8080) u prozoru preglednika.

Integracija Jenkins Kontakt Selenium webdriver

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

Integracija Jenkins Kontakt Selenium webdriver

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

Integracija Jenkins Kontakt Selenium webdriver

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

Korak 8) Kliknite gumb U redu. U Jenkins Nadzorna ploča.

Integracija Jenkins Kontakt Selenium webdriver

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

Integracija Jenkins Kontakt Selenium webdriver

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

Integracija Jenkins Kontakt Selenium WebDrive

Korak 10) Idi na Izgradi dio novog posla.

  • u Korijen POM U tekstualno polje unesite punu putanju do datoteke pom.xml
  • U odjeljku Ciljevi i opcije unesite „čisti test“

Integracija Jenkins Kontakt Selenium webdriver

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

Integracija Jenkins Kontakt Selenium webdriver

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

Integracija Jenkins Kontakt Selenium webdriver

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

Korak 13) Nakon što je proces izgradnje završen, u Jenkins Kliknite na nadzornu ploču WebdriverTest Projekt.

Integracija Jenkins Kontakt Selenium webdriver

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

Integracija Jenkins Kontakt Selenium webdriver

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

Integracija Jenkins Kontakt Selenium webdriver

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

Integracija Jenkins Kontakt Selenium webdriver

Zakazivanje Jenkins za automatsko izvršavanje

Zakazivanje izrada (Selenium testovi) jedna je od važnih značajki Jenkins, gdje automatski pokreće izgradnju na temelju definiranih kriterija. Jenkins pruža više načina za pokretanje procesa izgradnje u konfiguraciji Okidača izgradnje.

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

Korištenje Jenkins bez Mavena

Za pokretanje čistog TestNG skripta u Jenkins, unesite sljedeće u build:

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

Jenkins za automatsko izvršavanje

  • Kliknite na gumb Spremi.
  • Napomena: U gornjoj naredbi potrebno je dodati stvarnu putanju mapa lib i bin.
  • Nakon spremanja naredbe, Jenkins će izgraditi projekt u unaprijed definirano vrijeme, a ova naredba će se pokrenuti pomoću TestNG.
  • Rezultat će biti pohranjen u prilagođenoj HTML datoteci izvješća koja se može poslati e-poštom pomoću Jenkins konfiguracija.
  • Izlaz koda će biti:

Jenkins za automatsko izvršavanje

Prednosti korištenja Jenkins

  1. Rano otkrivanje problema – greške se mogu otkriti u ranoj fazi razvoja softvera.
  2. Automatska integracija – nije potreban zaseban napor za integraciju svih promjena.
  3. Instalacijski program – sustav koji se može primijeniti u bilo kojoj fazi razvoja.
  4. Zapisi – čuvaju se zapisi o prošlim izgradnjama.
  5. Podrška i dodaci – jedan od razloga za JenkinsPopularnost je u dostupnosti velike podrške zajednice. Dostupno je i mnogo gotovih dodataka koji vam pomažu proširiti njegovu funkcionalnost.

Pitanja i odgovori

Maven upravlja ovisnostima i životnim ciklusom izgradnje, Selenium pokreće preglednik i Jenkins orkestrira izvršenje. Zajedno tvore kompletan CI cjevovod koji kompajlira kod, preuzima potrebne JAR-ove, pokreće Selenium testira i automatski objavljuje izvješća o svakom commitu.

Koristite Maven 3.x za upravljanje ovisnostima i izgradnjama, i Jenkins LTS za stabilnu kontinuiranu integraciju. Ove verzije pružaju dugoročnu podršku, sigurnosne zakrpe i široku kompatibilnost dodataka za Selenium WebDriver, TestNGi dodatke za izvještavanje Surefire.

Da. Jenkins koristi sintaksu u cron stilu u odjeljku Build Triggers za zakazivanje Selenium apartmani. Na primjer, 0 23 * * * vodi apartman svake večeri u 11 sata Jenkins također može pokrenuti gradnje na SCM anketiranju ili događajima webhook-a.

Na AI Jenkins Dodaci predviđaju nestabilne testove, automatski podešavaju agente za izgradnju i otkrivaju anomalije u zapisnicima konzole. Smanjuju šum u cjevovodu, ubrzavaju povratne informacije i predlažu optimalnu paralelizaciju, što održava Selenium apartmani pouzdani kako broj testova raste u tisućama.

Da. Analiza utjecaja testiranja temeljena na umjetnoj inteligenciji mapira promjene koda na pogođene Selenium scenarije i pokreće samo relevantni podskup u JenkinsTo skraćuje cikluse povratnih informacija, smanjuje troškove infrastrukture i održava potpunu pokrivenost zakazivanjem potpune regresije na noćnim izradama.

Sažmite ovu objavu uz: