Maven & Jenkins Integration med Selenium Handledning
Vad รคr Jenkins i Selenium?
Jenkins รคr det ledande verktyget fรถr kontinuerlig integration med รถppen kรคllkod som utvecklats av Hudson lab. Den รคr plattformsoberoende och kan anvรคndas pรฅ Windows, Linux, Mac OS och Solaris miljรถer. Jenkins รคr skriven i Java. Jenkins huvudsakliga anvรคndning รคr att รถvervaka alla jobb som kan vara SVN-utcheckning, cron eller valfri applikationstillstรฅnd. Den aktiverar fรถrkonfigurerade รฅtgรคrder nรคr ett visst steg intrรคffar i jobb.
Viktiga egenskaper hos Jenkins
- รndra support: Jenkins genererar listan รถver alla รคndringar som gjorts i arkiv som SVN.
- Permanenta lรคnkar: Jenkins tillhandahรฅller direktlรคnkar till den senaste konstruktionen eller misslyckade konstruktionen som kan anvรคndas fรถr enkel kommunikation
- Installation: Jenkins รคr lรคtt att installera antingen med hjรคlp av direktinstallationsfil (exe) eller krigsfil att distribuera med hjรคlp av applikationsserver.
- E-postintegration: Jenkins kan konfigureras att e-posta innehรฅllet i byggets status.
- Enkel konfiguration: Att konfigurera olika uppgifter pรฅ Jenkins รคr enkelt.
- TestNG testa: Jenkins kan konfigureras fรถr att kรถra automationstestbygget Testng efter varje byggande av SVN.
- Flera virtuella datorer: Jenkins kan konfigureras fรถr att distribuera bygget pรฅ flera maskiner.
- Projektuppbyggnad: Jenkins dokumenterar detaljerna fรถr burken, versionen av burken och kartlรคggningen av bygg- och burknummer.
- Plugins: 3rd partyplugin kan konfigureras i Jenkins fรถr att anvรคnda funktioner och ytterligare funktionalitet.
Varfรถr Jenkins och Selenium?
- Springa Selenium tester i Jenkins lรฅter dig kรถra dina tester varje gรฅng din programvara รคndras och distribuera programvaran till en ny miljรถ nรคr testerna passerar.
- Jenkins kan schemalรคgga dina tester sรฅ att de kรถrs vid en viss tidpunkt.
- Du kan spara exekveringshistoriken och testrapporterna.
- Jenkins stรถdjer Maven fรถr att bygga och Testning ett projekt i kontinuerlig integration.
Vad รคr Maven i Selenium?
Maven รคr ett kraftfullt projekt-/bygghanteringsverktyg, baserat pรฅ konceptet med en POM (Project Object Model) som inkluderar projektinformation och konfigurationsinformation fรถr Maven sรฅsom byggkatalog, kรคllkatalog, beroende, testkรคllkatalog, mรฅl, plugins, etc. .
Varfรถr Maven & Jenkins
Selenium WebDriver รคr utmรคrkt fรถr webblรคsarautomatisering. Men nรคr du anvรคnder den fรถr att testa och bygga ett testramverk kรคnns den underdriven. Integrera Maven med Selenium ger fรถljande fรถrmรฅner
Apache Maven ger stรถd fรถr att hantera hela livscykeln fรถr ett testprojekt.
- Maven anvรคnds fรถr att definiera projektstruktur, beroenden, build och testhantering.
- Med hjรคlp av pom.xml(Maven) kan du konfigurera beroenden som behรถvs fรถr att bygga tester och kรถra kod.
- Maven laddar automatiskt ner nรถdvรคndiga filer frรฅn fรถrvaret medan projektet bygger.
Hur man installerar Maven och anvรคnder den med TestNG Selenium
Hรคr รคr steg fรถr att installera Maven och anvรคnda den med TestNG Selenium
Fรถr den hรคr handledningen kommer vi att anvรคnda Eclipse (Juno) IDE fรถr Java Utvecklare att stรคlla in Selenium WebDriver-projekt. Dessutom mรฅste vi lรคgga till m2eclipse plugin till Eclipse fรถr att underlรคtta byggprocessen och skapa pom.xml-fil.
Lรฅt oss lรคgga till m2eclipse plugin till Eclipse med fรถljande steg:
Steg 1) In Eclipse IDE, vรคlj Hjรคlp | Installera ny programvara frรฅn Eclipse Huvudmeny.
Steg 2) Ange URL:en i dialogrutan Installera https://www.eclipse.org/m2e/. Vรคlj Arbeta med och m2e-plugin som visas i fรถljande skรคrmdump:
Steg 3) Klicka pรฅ Nรคsta knappen och avsluta installationen.
Instรคlld Eclipse med Maven
Med m2e-plugin installerad behรถver vi nu skapa Maven-projektet.
Steg 1) In Eclipse IDE, skapa ett nytt projekt genom att vรคlja Fil | Nytt | รvrigt frรฅn Eclipse meny.
Steg 2) Pรฅ Nytt dialogrutan, vรคlj Maven | Maven-projektet och klicka pรฅ Nรคsta
Steg 3) Pรฅ Nytt Maven-projekt dialogrutan vรคlj Skapa ett enkelt projekt och klicka pรฅ Nรคsta
Steg 4) Ange WebdriverTest i Grupp-ID: och Artefakt-ID: och klicka pรฅ slutfรถr
Steg 5) Eclipse kommer skapa WebdriverTest med fรถljande struktur:
Steg 6) Hรถgerklicka pรฅ JRE Systembibliotek och vรคlj Vรฅra Bostรคder alternativet frรฅn menyn.
Pรฅ Egenskaper fรถr JRE System Library dialogrutan, se till Arbetsyta standard JRE รคr markerat och klicka pรฅ OK
Steg 7). Vรคlj pom.xml frรฅn Project Explorer..
pom.xml-filen รถppnas i redigeringssektionen
Steg 8) Lรคgg till Selenium, Maven, TestNG, junit beroenden till pom.xml i nod:
<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>
Steg 9) Skapa en ny TestNG Klass. Ange paketnamn som "exempel" och "Nytt test" i Namn : textrutan och klicka pรฅ Finish knappen som visas i fรถljande skรคrmdump:
Steg 10). Eclipse kommer att skapa NewTest-klassen som visas i fรถljande skรคrmdump:
Steg 11) Lรคgg till fรถljande kod till Nytt test klass:
Denna kod kommer att verifiera titeln pรฅ Guru99 Selenium Sida
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();
}
}
Steg 12) Hรถgerklicka pรฅ WebdriverTest och vรคlj TestNG | Konvertera till TestNG.
Eclipse kommer att skapa testng.xml som sรคger att du bara behรถver kรถra ett test med namnet Nytt test som visas i fรถljande skรคrmdump:
Uppdatera projektet och se till att filen visas i trรคdet Paketutforskare (hรถgerklicka pรฅ projektet โ Uppdatera).
Steg 13) Nu mรฅste du testa detta testng.xml.
Sรฅ gรฅ till Kรถr konfigurationer och skapa en ny lansering TestNG, vรคlj projektet och fรคltet Suite as testng.xml och klicka pรฅ Kรถr
Se till att bygget slutfรถrdes framgรฅngsrikt.
Steg 14). Dessutom mรฅste vi lรคgga till
- maven-kompilator-plugin
- maven-surefire-plugin
- testng.xml
till pom.xml.
Maven-surefire-pluginen anvรคnds fรถr att konfigurera och utfรถra tester. Hรคr anvรคnds plugin fรถr att konfigurera testing.xml fรถr TestNG testa och generera testrapporter.
Maven-compiler-plugin anvรคnds fรถr att hjรคlpa till att kompilera koden och anvรคnda den speciella JDK-versionen fรถr kompilering. Lรคgg till alla beroenden i fรถljande kodavsnitt till pom.xml i nod:
Steg 15) Att kรถra the tester i Mavens livscykel, hรถgerklicka pรฅ WebdriverTest och vรคlj Spring som | Maven test. Maven kommer att utfรถra test frรฅn projektet.
Se till att bygget slutfรถrdes framgรฅngsrikt.
Hur man integrerar Jenkins med Selenium webbdrivrutin
Hรคr รคr steg fรถr att installera Jenkins och konfigurera den fรถr att kรถra Maven med TestNg Selenium
Installation
Steg 1) Gรฅ till http://jenkins-ci.org/ och ladda ner rรคtt paket fรถr ditt operativsystem. Installera Jenkins.
Steg 2) Packa upp Jenkins till angiven mapp. Kรถr exe-fil som visas i fรถljande skรคrmdump:
Steg 3) In Jenkins 1.607-installation fรถnster klicka pรฅ Nรคsta knapp.
Steg 4) Klicka pรฅ installera knappen till slut.
Steg 5) Nรคr installationen รคr klar, navigera till Jenkins Dashboard (http://localhost:8080 som standard) i webblรคsarfรถnstret.
Steg 6) Klicka pรฅ Nytt objekt lรคnk fรถr att skapa ett CI-jobb.
Steg 7) Vรคlj alternativknappen fรถr Maven-projektet som visas i fรถljande skรคrmdump:
Anvรคnda Build a Maven-projektet alternativ, stรถdjer Jenkins att bygga och testa Maven-projekt.
Steg 8) Klicka pรฅ OK-knappen. Ett nytt jobb med namnet "WebdriverTest" skapas i Jenkins Dashboard.
Steg 9) Gรฅ till Hantera Jenkins => Konfigurera system som visas i fรถljande skรคrmdump.
Klicka pรฅ JDK-installationer och konfigurera JDK som i fรถljande skรคrmdump:
Steg 10) Gรฅ till Bygga avsnitt av nytt jobb.
- I Root POM textbox, ange hela sรถkvรคgen till pom.xml
- I avsnittet Mรฅl och alternativ anger du "rent test"
Steg 11) Klicka pรฅ Ansรถk knapp.
Steg 12) Pรฅ projektsidan fรถr WebdriverTest klickar du pรฅ Bygg nu lรคnken.
Maven kommer att bygga projektet. Det kommer det dรฅ att ha TestNG utfรถra testfallen.
Steg 13) Nรคr byggprocessen รคr klar klickar du pรฅ i Jenkins Dashboard WebdriverTest projektet
Steg 14) WebdriverTest-projektsidan visar bygghistoriken och lรคnkar till resultaten som visas i fรถljande skรคrmdump:
Steg 15) Klicka pรฅ lรคnken "Senaste testresultat" fรถr att se testresultaten som visas i fรถljande skรคrmdump:
Steg 16). Vรคlj specifik konstruktion sรฅ ser du aktuell status genom att klicka pรฅ "konsolutgรฅng".
Schemalรคgger Jenkins fรถr automatisk exekvering.
Schemalรคgga byggen (Selenium Tests) รคr en av de viktiga funktionerna i Jenkins dรคr det automatiskt utlรถser bygget, baserat pรฅ definierade kriterier. Jenkins tillhandahรฅller flera sรคtt att utlรถsa byggprocessen under Build Trigger-konfigurationen.
Till exempel:
Ange 0 23 * * * i textrutan Schema som visas i fรถljande skรคrmdump. Detta kommer att utlรถsa byggprocessen varje dag kl. 11
Anvรคnder Jenkings utan Maven
Fรถr att kรถra rent TestNg-skript i Jenkins, skriv in fรถljande i build
D:>java -cp โPathtolibfolder\lib\*;Pathtobinfolder\binโ org.testng.TestNG testng.xml
- Klicka pรฅ knappen Spara.
- Obs: Den faktiska sรถkvรคgen till lib och bin-mappen mรฅste lรคggas till i ovanstรฅende kommando.
- Efter att ha sparat kommandot kommer Jenkins att bygga projektet pรฅ fรถrdefinierad tid, och detta kommando kommer att kรถras med TestNG.
- Resultatet kommer att lagras i en anpassad rapport HTML-fil som kan skickas via e-post med en Jenkin-konfiguration
- Utmatning av koden kommer att vara
Fรถrdelar med att anvรคnda Jenkins
- Tidig upptรคckt av problem โ Bug kan upptรคckas i den tidiga fasen av mjukvaruutvecklingen
- Automatisk integration โ ingen separat anstrรคngning krรคvs fรถr att integrera alla รคndringar
- Installer โ ett driftsรคttbart system tillgรคngligt nรคr som helst under utveckling
- Records โ delbyggnadsrekord bibehรฅlls
- Support och plugins: En av anledningarna till Jenkins popularitet รคr tillgรฅngen till stort communitysupport. Dessutom finns massor av fรคrdiga plugins tillgรคngliga som hjรคlper dig att utรถka dess funktionalitet.




































