Integrarea Maven & Jenkins cu Selenium tutorial
În ce se află Jenkins Selenium?
Jenkins este principalul instrument open-source de integrare continuă dezvoltat de Hudson Lab. Este multiplatformă și poate fi folosită pe Windows, Linux, Mac OS și Solaris medii. Jenkins este scris în Java. Utilizarea principală a lui Jenkin este de a monitoriza orice job care poate fi SVN checkout, cron sau orice stare de aplicație. Declanșează acțiuni preconfigurate atunci când are loc un anumit pas în joburi.
Caracteristici importante ale lui Jenkins
- Asistență pentru schimbare: Jenkins generează lista tuturor modificărilor făcute în depozite precum SVN.
- Link-uri permanente: Jenkins oferă legături directe către cea mai recentă versiune sau versiunea eșuată care poate fi folosită pentru o comunicare ușoară
- Instalare: Jenkins este ușor de instalat folosind fișierul de instalare directă (exe) sau fișierul război pentru a fi implementat folosind serverul de aplicații.
- Integrare e-mail: Jenkins poate fi configurat pentru a trimite prin e-mail conținutul stării build-ului.
- Configurare usoara: Pentru a configura diverse sarcini pe Jenkins este ușor.
- TestNG Test: Jenkins poate fi configurat pentru a rula testul de automatizare Testng după fiecare build de SVN.
- Mai multe VM: Jenkins poate fi configurat să distribuie versiunea pe mai multe mașini.
- Construire proiect: Jenkins documentează detaliile jar, versiunea jar și maparea numerelor de construcție și borcan.
- Plugin-uri: 3rd Pluginul de petrecere poate fi configurat în Jenkins pentru a utiliza funcții și funcționalități suplimentare.
De ce Jenkins și Selenium?
- Alergare Selenium testele în Jenkins vă permite să rulați testele de fiecare dată când software-ul se schimbă și să implementați software-ul într-un mediu nou atunci când testele trec.
- Jenkins vă poate programa testele să ruleze la o anumită oră.
- Puteți salva istoricul execuției și rapoartele de testare.
- Jenkins îl sprijină pe Maven pentru construirea și Testarea un proiect în continuă integrare.
În ce este Maven Selenium?
Maven este un instrument puternic de gestionare a proiectelor/construcțiilor, bazat pe conceptul unui POM (Project Object Model) care include informații despre proiect și informații de configurare pentru Maven, cum ar fi directorul de construcție, directorul sursă, dependența, directorul sursă de testare, obiectivele, pluginurile etc. .
De ce Maven & Jenkins
Selenium WebDriver este excelent pentru automatizarea browserului. Dar, atunci când îl folosiți pentru testare și construirea unui cadru de testare, se simte sub putere. Integrarea Maven cu Selenium oferă următoarele beneficii
Apache Maven oferă suport pentru gestionarea întregului ciclu de viață al unui proiect de testare.
- Maven este folosit pentru a defini structura proiectului, dependențele, construirea și managementul testelor.
- Folosind pom.xml(Maven) puteți configura dependențele necesare pentru testarea și rularea codului.
- Maven descarcă automat fișierele necesare din depozit în timp ce construiește proiectul.
Cum să instalezi Maven și să-l folosești cu TestNG Selenium
Iată pașii pentru a instala Maven și a-l utiliza TestNG Selenium
Pentru acest tutorial, vom folosi Eclipse (Juno) IDE pentru Java Dezvoltatori de configurat Selenium Proiect WebDriver. În plus, trebuie să adăugăm pluginul m2eclipse la Eclipse pentru a facilita procesul de construire și pentru a crea fișierul pom.xml.
Să adăugăm pluginul m2eclipse la Eclipse cu urmatorii pasi:
Pas 1) In Eclipse IDE, selectați Ajutor | Instalați software nou din Eclipse Meniu principal.
Pas 2) În caseta de dialog Instalare, introduceți adresa URL https://www.eclipse.org/m2e/. Selectați Lucreaza cu și pluginul m2e, așa cum se arată în următoarea captură de ecran:
Pas 3) Faceţi clic pe Pagina Următoare → butonul și finalizați instalarea.
Configurați Eclipse cu Maven
Cu pluginul m2e instalat, acum trebuie să creăm proiectul Maven.
Pas 1) In Eclipse IDE, creați un nou proiect selectând Fișier | Nou | Altele din Eclipse meniu.
Pas 2) Pe Nou , selectați Maven | Proiectul Maven și faceți clic pe Următorul
Pas 3) Pe Noul proiect Maven dialog selectați Creați un proiect simplu și faceți clic pe Următorul
Pas 4) Introduceți WebdriverTest în ID grup: și Id. artefact: și faceți clic pe Terminare
Pas 5) Eclipse va crea WebdriverTest cu următoarea structură:
Pas 6) Faceți clic dreapta pe Biblioteca de sistem JRE Și selectați Proprietăţi opțiune din meniu.
Pe Proprietăți pentru biblioteca de sistem JRE caseta de dialog, asigurați-vă JRE implicit pentru spațiul de lucru este selectat și faceți clic pe OK
Pas 7). Selecta pom.xml din Explorator de proiecte..
Fișierul pom.xml se va deschide în secțiunea Editor
Pas 8) Adauga Selenium, Maven, TestNG, Junit dependențe de pom.xml în nodul:
<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>
Pas 9) Creaza un nou TestNG Clasă. Introduceți numele pachetului ca „exemplu” și „NewTest” în Nume: caseta de text și faceți clic pe finalizarea butonul așa cum se arată în următoarea captură de ecran:
Pas 10). Eclipse va crea clasa NewTest așa cum se arată în următoarea captură de ecran:
Pas 11) Adăugați următorul cod la NewTest clasă:
Acest cod va verifica titlul lui Guru99 Selenium Pagină
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(); } }
Pas 12) Faceți clic dreapta pe WebdriverTest și selectați TestNG | Schimba in TestNG.
Eclipse va crea testng.xml care spune că trebuie să rulați un singur test cu numele NewTest așa cum se arată în următoarea captură de ecran:
Actualizați proiectul și asigurați-vă că acel fișier apare în arbore Pachet Explorer (clic dreapta pe proiect – Refresh).
Pas 13) Acum trebuie să faceți un test prin asta testng.xml.
Deci, du-te la Rulați Configurații și creați o nouă lansare TestNG, selectați proiectul și câmpul Suită as testng.xml și faceți clic pe Run
Asigurați-vă că construcția s-a terminat cu succes.
Pas 14). În plus, trebuie să adăugăm
- maven-compiler-plugin
- maven-surfire-plugin
- testng.xml
la pom.xml.
Pluginul maven-surefire este folosit pentru a configura și executa teste. Aici pluginul este folosit pentru a configura testing.xml pentru TestNG testați și generați rapoarte de testare.
Plugin-ul maven-compiler este folosit pentru a ajuta la compilarea codului și la utilizarea versiunii JDK specifice pentru compilare. Adăugați toate dependențele din următorul fragment de cod, la pom.xml din fișierul nodul:
Pas 15) Pentru a rula the teste în ciclul de viață Maven, faceți clic dreapta pe WebdriverTest și selectați Run As | Testul Maven. Maven va executa testul din proiect.
Asigurați-vă că construcția s-a terminat cu succes.
Cum se integrează Jenkins cu Selenium webdriver
Iată pașii pentru a instala Jenkins și a-l configura să ruleze Maven cu TestNg Selenium
Instalare
Pas 1) Mergi la pagina http://jenkins-ci.org/ și descărcați pachetul corect pentru sistemul dvs. de operare. Instalați Jenkins.
Pas 2) Dezarhivați Jenkins în folderul specificat. Rulați fișierul exe așa cum se arată în următoarea captură de ecran:
Pas 3) In Configurare Jenkins 1.607 faceți clic pe fereastra Pagina Următoare → butonul.
Pas 4) Faceţi clic pe Instalare butonul la final.
Pas 5) Odată ce instalarea este finalizată, navigați la Jenkins Dashboard (http://localhost:8080 în mod implicit) în fereastra browserului.
Pas 6) Dati click pe Postul nouă link pentru a crea un loc de muncă CI.
Pas 7) Selectați butonul radio al proiectului Maven, așa cum se arată în următoarea captură de ecran:
Utilizarea Build a Proiectul Maven Opțiunea, Jenkins acceptă construirea și testarea proiectelor Maven.
Pas 8) Faceți clic pe butonul OK. Un nou job cu numele „WebdriverTest” este creat în Jenkins Dashboard.
Pas 9) Mergi la pagina Gestionați Jenkins => Configurați sistemul așa cum se arată în următoarea captură de ecran.
Faceți clic pe instalări JDK și configurați JDK ca în următoarea captură de ecran:
Pas 10) Du-te la Construi secțiunea noului loc de muncă.
- În Root POM caseta text, introduceți calea completă către pom.xml
- În secțiunea Obiective și opțiuni, introduceți „test curat”
Pas 11) Faceţi clic pe Aplică butonul.
Pas 12) Pe pagina proiectului WebdriverTest, faceți clic pe Construiește acum link-ul.
Maven va construi proiectul. Va avea atunci TestNG executa cazurile de testare.
Pas 13) Odată ce procesul de construire este finalizat, în Jenkins Dashboard faceți clic pe WebdriverTest proiect
Pas 14) Pagina proiectului WebdriverTest afișează istoricul construcției și link-uri către rezultate, așa cum se arată în următoarea captură de ecran:
Pas 15) Faceți clic pe linkul „Ultimul rezultat al testului” pentru a vedea rezultatele testului, așa cum se arată în următoarea captură de ecran:
Pas 16). Selectați o anumită versiune și veți vedea starea curentă făcând clic pe „ieșirea consolei".
Programarea Jenkins pentru execuție automată.
Programarea versiunilor (Selenium Teste) este una dintre caracteristicile importante ale Jenkins unde declanșează automat construcția, pe baza unor criterii definite. Jenkins oferă mai multe moduri de a declanșa procesul de construire în configurația Build Trigger.
De exemplu:
Introduceți 0 23 * * * în caseta de text Schedule, așa cum se arată în următoarea captură de ecran. Acest lucru va declanșa procesul de construire în fiecare zi la ora 11:XNUMX
Folosind Jenkings fără Maven
Pentru a rula un script TestNg pur în Jenkins, introduceți următoarele în build
D:>java -cp „Pathtolibfolder\lib\*;Pathtobinfolder\bin” org.testng.TestNG testng.xml
- Faceți clic pe butonul Salvare.
- Notă: Calea actuală a folderului lib și bin trebuie adăugată în comanda de mai sus.
- După salvarea comenzii, Jenkins va construi proiectul într-un timp predefinit, iar această comandă va fi rulată folosind TestNG.
- Rezultatul va fi stocat într-un fișier HTML de raport personalizat care poate fi trimis prin e-mail cu o configurație Jenkin
- Ieșirea codului va fi
Beneficiile utilizării Jenkins
- Depistarea timpurie a problemelor – Bug poate fi detectat în faza incipientă a dezvoltării software
- Integrare automată – nu este necesar un efort separat pentru a integra toate modificările
- Instalator – un sistem implementabil disponibil în orice punct de dezvoltare
- Înregistrări – înregistrările de construcție parțială păstrate
- Suport și pluginuri: Unul dintre motivele popularității lui Jenkin este disponibilitatea suportului comunității mari. De asemenea, sunt disponibile o mulțime de plugin-uri gata făcute care vă ajută să-i extindeți funcționalitatea.