logo

Selen Maven

Maven är det senaste byggtestverktyget. Den har flera nya funktioner jämfört med Ant, som beroende, etc.

Maven är ett verktyg för projektuppbyggnad eller projektledning. Det används för att kontrollera kompileringsproblemen mellan ramkomponenter när flera testingenjörer integrerar sina filer i samma ramverk.

Den har alltid underhållit övervakaren, ramverkskomponenterna eller byggnaden, och den tillhandahåller modifiering av byggstatus närhelst ändring sker i ramverket.

Det ger ' bygga framgång ' meddelande om inga kompileringsproblem i ramverket eller på annat sätt tillhandahålla' bygga misslyckande ' meddelande.

Maven har nya funktioner som dependency, som används för att ladda ner dependency jar från internet innan testkörningen.

Med hjälp av Maven kan vi köra testskripten på kommandoraden utan en förmörkelse. Och det ger alltid rammappstrukturen.

För mer information om Maven, se länken nedan:

https://www.javatpoint.com/maven-tutorial

Det finns två programvaror tillgängliga i Maven:

    Maven Eclipse Plug-in Maven kommandorads plug-in
Selen Maven

Maven Eclipse plug-in

Det är ett standardinsticksprogram för de senaste Eclipse-versionerna som Mars, Luna, oxygen, som används för att skapa ett Maven-projekt genom Eclipse.

Installera Maven plug-in för Eclipse och använd den med Selenium TestNG

För det mesta installeras Maven-plugin-programmet automatiskt i Eclipse, men om det inte finns kommer vi att gå till Eclipse Market Place och sök efter Maven och ladda ner M2E integrerad version därifrån.

Selen Maven

Steg för att skapa Maven-projekt

För att skapa ett Maven-projekt, följ stegen nedan:

  • Gå till Arkiv → Nytt → Projekt
Selen Maven
  • Expandera sedan Maven mapp och välj Maven-projektet alternativ och klicka på Nästa
Selen Maven
  • Klicka igen på Nästa knappen för den fortsatta processen.
Selen Maven
  • Klicka på Nästa knappen utan att göra något.
Selen Maven
  • Efter att ha klickat på knappen Nästa kommer vi att tillhandahålla Grupp-ID och Artefakt-ID i vårt fall, och vi kommer att ge grupp-id som MavenProject och Artifact ID as MavenProject , och klicka på Avsluta knappen som vi kan se i skärmdumpen nedan:
Selen Maven
  • När vi är klara med att skapa Maven-projektet, vår Maven mappstruktur kommer se ut så här:
Selen Maven

Maven kommandorads plug-in

Det används för att köra Selenium-testskriptet i kommandotolken utan en Eclipse, och denna programvara bör installeras explicit.

Installationssteg för Maven kommandorads plug-in

Följ stegen nedan för att installera Maven kommandoradsplugin:

Obs: Innan vi startar installationsprocessen av Maven kommer vi att se till att Java är installerat och att miljövariabeln också är inställd.

Steg 1: Ladda ner Apache Maven

  • Gå först till Google sök efter Maven ladda ner och klicka på den första länken, som vi kan se i skärmdumpen nedan:
    Selen Maven
  • När vi klickar på länken kommer den att navigera till Maven-communityt. Och förutom Binärt zip-arkiv, klicka på den givna länken, som vi kan se i skärmdumpen nedan:
    Selen Maven
  • Ladda ner zip-mappen, och sedan packa upp mappen och placera den i C-drev , och kopiera platsen för mappen.
Selen Maven

Steg 2: Lägg till M2_Home i systemvariabeln

  • När vi har kopierat platsen går vi till Miljövariabler fönstret och klicka på Ny knappen på Systemvariabel avsnitt, som vi kan se i bilden nedan:
Selen Maven
  • Efter det kommer vi att tillhandahålla Variabelnamn och Variabelt värde , och klicka på OK
Selen Maven

Steg 3: Lägg till %M2_Home%in till sökvägen

  • När vi har skapat systemvariabeln M2_Home kommer vi att hitta Väg variabel och klicka på Redigera knappen, som vi kan se i skärmdumpen nedan:
Selen Maven
  • De Fönstret Redigera variabel visas på skärmen, sedan klickar vi på Ny knapp och %M2_Hem%in värde och klicka på OK
Selen Maven

Steg 4: Verifiera

  • Efter att ha ställt in miljövariablerna kommer vi att kontrollera om Maven har installerats framgångsrikt eller inte.
  • För detta öppnar vi kommandotolken och skriver kommandot nedan:
 mvn- version 

Selen Maven
  • Och vi kan se i skärmdumpen ovan att Apache Maven har installerats framgångsrikt.

Hur man hanterar eller laddar ner beroende Jar med Maven

Innan vi börjar skriva en Maven-kod måste vi lägga till de allmänna beroenden som TestNG och Selen i filen pom.xml.

Så för detta kommer vi att följa nedanstående process:

diskret matematik negation
  • Automatiskt får vi Pom.xml-filen inom samma projekt.
  • För att ladda ner dependency jar för TestNG och Selen , bör vi skriva en beroendekod för alla verktyg i Pom.xml-filen.
  • För att få beroendekoden, gå till Google-sökningen och skriv ' TestNG Maven beroende ', och klicka på den angivna länken.
    Selen Maven
  • Och kopiera beroendekoden för TestNG och klistra in i filen pom.xml.
    Selen Maven
  • I den omfattning sektion, ändra värdet från testa till sammanställa och slutlig beroendekod kommer att se ut så här:
 org.testng testng 6.8 compile 

Sedan kommer vi att lägga till Maven-beroendet för Selen, så för detta kommer vi att följa samma process som tidigare:

  • Gå till Google och sök efter ' Maven selenberoende ' och klicka på den givna länken som vi kan se i skärmdumpen nedan:
Selen Maven
  • Och kopiera beroendekoden från länken och klistra in i xml fil.
Selen Maven
  • Efter att ha lagt till beroendekoden för TestNG och selen , kommer filen Pom.xml att se ut så här:
 org.testng testng 6.8 compile org.seleniumhq.selenium selenium-java 3.141.59 
  • Tryck sedan på ctrl+s för att spara filen pom.xml.
  • När vi är klara med att lägga till med beroenden kan vi se att alla jars-filer har lagts till i Maven beroenden mapp under MavenProject .
    Selen Maven

Kör Selenium-kod genom Maven och TestNG

  • Vi kommer att skriva ett exempel på testfall, med hjälp av @Test, @BeforeTest och @AfterTest TestNG-anteckningar.
  • Först kommer vi att lansera Google Chrome
  • Navigera sedan till javatpoint-webbplatsen.
  • Och få den aktuella sidans URL och titel på webbplatsen med hjälp av getTitle() , getCurrentURL()

Notera

getTitle(): Denna metod används för att fånga sidans titel.

getCurrentURL(): Den används för att fånga sidans aktuella URL.

För att köra ovanstående testskript kommer vi att skapa ett paket i MavenProject.

  • För att skapa ett paket i MavenProject, högerklickar vi på src/test/java → Nytt → Paket
Selen Maven
  • Efter det kommer vi att ange namnet på paketet som ' testpaket ', och klicka på Avsluta knappen som vi kan se i skärmdumpen nedan:
    Selen Maven
  • Efter att ha skapat ett paket kommer vi att skapa en klass.

För att skapa en klass i MavenProject, följ processen nedan:

  • Högerklicka på det nyskapade paketet och välj Ny välj sedan Klass från den givna listan som vi kan se i skärmdumpen nedan:

testpaket → Nytt → Klass

Selen Maven
  • Och ange namnet på klassen som ' MavenTest1 ' och klicka på Avsluta
Selen Maven

Efter att ha skapat paketet och klassen kommer vi att börja skriva koden.

Enligt vårt kodkrav kommer vi att lägga till flera beroenden.

Efter att ha lagt till beroenden ser vår pom.xml-fil ut så här:

 junit junit 3.8.1 test org.testng testng 6.8 compile com.google.inject guice 4.1.0 no_aop org.seleniumhq.selenium selenium-java 3.141.59 org.seleniumhq.selenium selenium-chrome-driver 2.50.0 com.google.guava guava 22.0 com.google.api-client google-api-client-appengine 1.23.0 com.google.guava guava-jdk5 com.google.code.gson gson 2.2.4 

Och här är exempelkoden:

 package testpackage; import java.util.concurrent.TimeUnit; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; import org.testng.annotations.AfterTest; import org.testng.annotations.BeforeTest; import org.testng.annotations.Test; public class MavenTest1 { public String baseUrl = 'https://www.javatpoint.com/'; String driverPath = 'C://chromedriver_win321//chromedriver.exe'; public WebDriver driver ; @Test public void test() { // set the system property for Chrome driver System.setProperty('webdriver.chrome.driver', driverPath); // Create driver object for CHROME browser driver = new ChromeDriver(); driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS); driver.manage().window().maximize(); driver.get(baseUrl); // get the current URL of the page String URL= driver.getCurrentUrl(); System.out.print(URL); //get the title of the page String title = driver.getTitle(); System.out.println(title); } @BeforeTest public void beforeTest() { System.out.println('before test'); } @AfterTest public void afterTest() { driver.quit(); System.out.println('after test'); } } 

Kör koden

Vi kan köra ovanstående kod på flera sätt:

    Kör genom TestNG Spring genom Maven Kör genom kommandoraden

Kör genom TestNG

Om vi ​​kör ovanstående kod med TestNG kommer vi att följa nedanstående process:

  • Högerklicka på java fil och välj Kör som → 1 TestNG-test som vi kan se i bilden nedan:
Selen Maven
  • Efter att ha kört koden framgångsrikt kommer den att ge följande utdata:
Selen Maven
  • Och det kommer att starta webbläsaren i konsolfönstret som vi kan se i skärmdumpen nedan:
    Selen Maven

Kör genom Maven

För att köra samma kod genom Maven, följ stegen nedan:

Först måste vi konvertera MavenTest1.java fil i TestNG Fil, för detta följ processen nedan:

  • Högerklicka på java fil och välj TestNG och välj sedan Konvertera till TestNG alternativ i den givna listan.
Selen Maven
  • När vi väl har valt Konvertera till TestNG alternativ kommer det att öppna fönstret nedan, och efter det klickar vi på Avsluta
Selen Maven
  • Och den konverterade TestNG-filen kommer att se ut så här:
Selen Maven

Efter det kommer vi att köra testng.xml fil, så för detta måste vi lägga till Maven Plugins i pom.xml filer.

Så vi kommer att lägga till de tre olika plugins, som är följande:

    Maven kompilator plugin Maven surefire plugin Maven source plugin

Notera:

De Maven kompilator plugin används för att kompilera källkoden för ett Maven-projekt. Mavens testkommando kommer att ansluta till internet och ladda ner all beroendeförråd till .M2-mappens lokala arkiv och sedan kompilera hela selenkällkoden som vi kan se i bilden nedan:

arv i c++
Selen Maven

De Maven surefire plugin används när vi ska köra enhetstesten av applikationen.

De Maven source plugin används för att bygga jars-filerna som hade .java källfiler.

Efter att ha lagt till alla plugins ser vår pom.xml ut så här:

 org.apache.maven.plugins maven-compiler-plugin 3.1 1.6 1.6 org.apache.maven.plugins maven-surefire-plugin 2.19.1 C:UsersJTPeclipse-workspaceMavenProject	estng.xml org.apache.maven.plugins maven-source-plugin attach-sources jar 
  • Spara filen pom.xml och kör koden.
  • För att köra ovanstående kod, högerklicka på MavenProject → Kör som → Maven Test som vi kan se i bilden nedan:
Selen Maven
  • När alla testfall är godkända och Build körs framgångsrikt kommer det att ge följande utdata:
Selen Maven
  • Och det kommer att starta webbläsaren i konsolfönstret som vi kan se i skärmdumpen nedan:
Selen Maven

Kör genom kommandoraden

Om vi ​​använder någon fjärrmaskin med hjälp av Maven-kommandon, måste vi gå till kommandotolken.

För detta kommer vi att gå till den specifika katalogen i Maven-projektet, så högerklicka för det MavenProject och välj Egenskaper alternativ från den givna popup-menyn.

Selen Maven
  • Och kopiera sedan platsen för MavenProject och klistra in kommandotolken för att nå rätt plats för filen.
Selen Maven
  • Och skriv sedan kommandot nedan i kommandotolken:
 cd eclipse-workspaceMavenProject 

Selen Maven

När vi väl är i Mavenprojektet kommer vi att använda några av de vanliga kommandona i Maven, som är följande:

Maven befaller Beskrivning
mvn ren installation Detta kommando används för att generera, kompilera och köra jars-filerna.
mvn test Vi kommer att använda det här kommandot när vi ska utföra testen mot den kompilerade källkoden med hjälp av ett lämpligt ramverk för enhetstestning.
mvn kompilera Den används för att kompilera källkoden för Maven-projektet.
mvn paket Den kommer att packa den körda koden i ett annat format som Jar.
  • Här kommer vi att utföra mvn ren installation
  • Och det här kommandot kommer att exekvera alla fyra livscyklerna för Maven, sedan exekvera testfallet, och det kommer att skapa jar-filerna. Vid framgångsrik körning kommer webbläsaren att startas och byggandet blev också framgångsrikt som vi kan se i skärmdumpen nedan:
Selen Maven

Exempel 2 : I det här exemplet skapar vi helt enkelt två enhetstestfall där vi lägger till och subtraherar de två variablerna (p och q) och kör koden genom TestNG och Maven.

Här är exempelkoden:

 package testpackage; import org.testng.Assert; import org.testng.annotations.Test; public class demo1 { @Test public void sum() { System.out.print('Sum method'); int p=10; int q=20; Assert.assertEquals(30, p+q); } @Test public void sub() { System.out.print('Sub method'); int p=20; int q=10; Assert.assertEquals(10, p-q); } } 

Kör koden i TestNG

För att köra koden med hjälp av TestNG, följ processen nedan:

  • Högerklicka på java fil och välj Kör som → 1 TestNG-test som vi kan se i bilden nedan:
Selen Maven
  • Efter att ha kört koden framgångsrikt kommer den att ge följande utdata:
    Selen Maven

Kör koden genom Maven

För att köra samma kod med hjälp av Maven, följ stegen nedan:

  • Först måste vi konvertera filen Demo1.java till TestNG-filen för detta
  • Högerklicka på java fil och välj TestNG och välj sedan Konvertera till TestNG i den givna popup-menyn.
Selen Maven
  • Och vi kan också ändra namnet på filen enligt våra behov och klicka på Avsluta
Selen Maven
  • Efter det kommer vi att tillhandahålla vägen till xml fil till pom.xml fil genom plugins som vi gjorde det i exemplet ovan:
 org.apache.maven.plugins maven-surefire-plugin 2.19.1 C:UsersJTPeclipse-workspaceMavenProject	estng1.xml 
  • Efter att ha lagt till Maven-surefire-plugin i filen pom.xml, kommer vi att spara filen genom att trycka på ctrl+s.
  • Och högerklicka sedan på MavenProject → Kör som → Maven Test som vi kan se i bilden nedan:
Selen Maven
  • När alla testfall är godkända och Build körs framgångsrikt kommer det att ge följande utdata:
Selen Maven