Selenium Continuous Integration with Jenkins [Selenium – Maven – Git – Jenkins] – Step By Step Guide

Selenium Continuous Integration with Jenkins using GIT

In dit bericht probeer ik de volledige gids van Selenium Continuous Integration (End to End Integration) met Jenkins te bewaren. Dit is een gids voor het implementeren van continue integratie met Jenkins, Maven, en TestNG met GitHub. Er zijn veel tools en technieken die kunnen worden geïntegreerd in een CI omgeving. Hier gebruik ik Selenium WebDriver, Java, TestNG, Maven, en ik integreer deze met Jenkins. Om continue integratie te implementeren, volg de 9 stappen die ik hieronder vermeld.

  • 1. Wat is continue integratie
  • 2. Wat is Maven
  • 3. Bouwen Van Een Maven-Project In Eclipse
  • 4. Wat is GIT
  • 5. Wat is Jenkins
  • 6. Installatie van Jenkins
  • 7. Jenkins configureren voor een Maven-Project
  • 8. Configureer GIT Plugin in Jenkins
  • 9. Lopende Maven Project van Jenkins

Wat is continue integratie

continue integratie wordt afgekort als CI. Continue integratie is een ontwikkelingspraktijk die tot doel heeft de juistheid van een software te waarborgen. Na elke commit wordt een reeks tests automatisch uitgevoerd en wordt een software getest om er zeker van te zijn dat de software zonder onderbrekingen draait. Als een test mislukt, zullen we onmiddellijk feedback te krijgen zeggen “build is broken”.

in eenvoudige woorden, continue integratie is een proces om de juistheid van een software te controleren.

continue integratie

enkele van de continue integratie tools zijn Jenkins, TeamCity, Bamboo, Travis, CircleCi, Bitbucket, CruiseControl

Wat is Maven

Maven, een Jiddisch woord dat “accumulator van kennis”betekent. Maven is een build automation tool voornamelijk gebruikt voor Java-projecten. Het helpt bij het bouwen van software, het beschrijft hoe software wordt gebouwd en het beschrijft de afhankelijkheden. Het downloadt dynamisch Java bibliotheken en Maven plug-ins van een of meer repositories zoals de Maven 2 centrale Repository, en slaat ze op in een lokale cache. We gebruiken maven in Selenium als een build tool of project management tool. Het helpt bij het beheren van alle Project afhankelijkheden en zorgen voor een eenvoudig bouwproces.

belangrijkste doelstellingen van Maven zijn::

  • het bouwproces eenvoudig maken
  • een uniform bouwsysteem leveren
  • kwaliteitsinformatie verstrekken
  • richtsnoeren voor de ontwikkeling van beste praktijken verstrekken
  • transparante migratie naar nieuwe functies toestaan

tot nu toe hebben we geleerd wat continue integratie is en wat Maven is. Als u zit op uw systeem en proberen uit te voeren dan laten we beginnen met de onderstaande implementeren 9 stappen.

Selenium continue integratie met Jenkins

stap 1: Open je Eclipse IDE om te beginnen met het bouwen van een maven project

een Maven-Project bouwen in Eclipse

Maven-Project installeren in Eclipse:

stap 2: Maven installeren in Eclipse: controleer deze link

dus, nu hebben we Maven geïnstalleerd in Eclipse. Laten we nu Maven Project maken in Jenkins.

Maven-Project aanmaken In Jenkins:

stap 3: Maak een nieuw Maven-Project in Eclipse-volg onderstaande stappen

3.1 om een project aan te maken – Klik met de rechtermuisknop op Package Explorer en navigeer door New – Other

zorg ervoor dat TestNG al is geïnstalleerd. Check dit uit, om te zien “Hoe Installeer TestNG In Eclipse” en deze check deze link voor “TestNG Complete Tutorial”

het Installeren van Maven

Selecteer Maven Project en klik op VolgendeInstalleren Maven

Kies ‘Maak een eenvoudig project’ aan te vinken en klik op VolgendeMaak Maven ProjectVul de Groeps-Id, Artefact-Id en klik op de knop Voltooien

Maak Maven ProjectStructuur van het project ziet er als weergegeven in de afbeelding hieronder

Maak Maven Project

3.2 Configureren van pom.xml-bestand, dat automatisch werd gemaakt, om andere plugin potten op te nemen om het bouwproces. Het is te vinden in de root van het Maven project zoals weergegeven in de onderstaande afbeelding.

in het Maven-project gebruiken we POM-bestand om de vereiste afhankelijkheden toe te voegen. Dubbelklik op pom.xml bestand en klik op pom.XML-tab

Maven-Project

voeg de onderstaande Maven-afhankelijkheid (Selenium en TestNG) toe om maven in staat te stellen de benodigde potten voor uw project te downloaden.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

< afhankelijkheden>
<!– Selenium –>
< afhankelijkheid>
< groepid > org.Selena.seleen< / groepid>
<artifactId>selenium-java < / artifactId>
<versie>2.53.1< / versie>
</afhankelijkheid>
<!– TestNG –>
<afhankelijkheid>
<groepid> org.testng< / groepsid>
<artifactId> testng< / artifactId>
<versie> 6.8< / versie>
<toepassingsgebied> test< / toepassingsgebied>
</afhankelijkheid>
</afhankelijkheden>

Maven-Project aanmaken

3.3 Het toevoegen van TestNG-potten aan de afhankelijkheid zal TestNG in uw project inschakelen.

Maak een TestNG-klasse aan en genereer testng.xml-bestand. Controleer de onderstaande link om deze stap te doen.

een TestNG-klasse aanmaken en testng genereren.xml-bestand

Maak Maven Project

Kopieer de onderstaande code en plaats deze in uw NewTest klasse

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31

package tests;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.Test;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.AfterClass;
public class NewTest {
public WebDriver driver;
@Test
public void openMyBlog() {
driver.get(“https://www.softwaretestingmaterial.com/”);
}
@BeforeClass
public void beforeClass () {
systeem.setProperty (“webdriver.Gecko.bestuurder”, “D:\\Selenium\\Drivers\\geckodriver.exe”);
driver = nieuwe FirefoxDriver();
}
@afterclass
public void afterClass () {
driver.afsluiten();
}
}

testng.xml: testng.xml-bestand ziet eruit als hieronder. Kopieer en plaats het in je testng.xml

1
2
3
4
5
6
7
8

<?xml version=”1.0″ encoding=”UTF-8″?>
<suite name=”Suite” parallel=”false”>
<test name=”Test”>
<classes>
<class name=”tests.NewTest”/>
</classes>
</test> <!– Test –>
</suite> <!– Suite –>

het project uitvoeren met testng.xml, klik met de rechtermuisknop op ‘ testng.xml ‘file and go to Run As-TestNG Suite

3.4 Het toevoegen van’ maven-compiler-plugin ‘en’ maven-surefire-plugin ‘ aan de pom.xml-bestand

om het project uit te voeren met pom.xml, we moeten wat meer items toevoegen in de pom.xml-bestand. We moeten ‘maven-compiler-plugin’ en ‘maven-surefire-plugin’

pom toevoegen.xml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52

<project xmlns=”http://maven.apache.org/POM/4.0.0″ xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xsi:schemaLocation=”http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd”>
<modelVersion>4.0.0</modelVersion>
<groupId>mavenPackage</groupId>
<artifactId>MavenProject</artifactId>
<versie>0.0.1-SNAPSHOT</versie>
<afhankelijkheden>
<!– Selenium –>
<afhankelijkheid>
<groepid> org.seleniumhq.seleen< / groepid>
<artifactId>selenium-java < / artifactId>
<versie>2.53.1< / versie>
</afhankelijkheid>
<!– TestNG –>
<afhankelijkheid>
<groepid> org.testng</groupId>
<artifactId>testng</artifactId>
<versie>6.8</versie>
<toepassingsgebied>test</scope>
</afhankelijkheid>
</afhankelijkheden>
<bouwen>
<plug-ins>
<plugin>
<groupId>org.Apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<versie>3.6.1</versie>
<configuratie>
<bron>1.8</bron>
<doel>1.8</target>
</configuratie>
</plugin>
<plugin>
<groupId>org.Apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.20</version>
<configuration>
<suiteXmlFiles>
<suiteXmlFile>testng.xml</suiteXmlFile>
<!– <suiteXmlFile>src/main/resources/testng.xml</suiteXmlFile> –>
</suiteXmlFiles>
</configuratie>
</plugin>
</plug-ins>
</bouwen>
</project>

Opmerking: Het proces van het bouwen bouwen uw Maven project en voer de basis testng.xml tijdens een Maven test. Zodra je Maven hebt ingesteld en alle bijbehorende potten hebt gedownload, klik je met de rechtermuisknop op het project en ga je naar run – Maven Clean en probeer dan install & build. Als je in staat bent om je Maven projecten te bouwen/reinigen/installeren dan heb je Maven succesvol geà nstalleerd/geconfigureerd.

Wat is GIT

Git is het meest gebruikte moderne versiebeheersysteem in de wereld van vandaag voor het bijhouden van wijzigingen in elke set bestanden. Git is een open source project. Het is gericht op snelheid, data-integriteit en ondersteuning voor gedistribueerde, niet-lineaire workflows. Hiermee kun je je werk lokaal committen en vervolgens je kopie van de repository synchroniseren met de kopie op de server.

stap 4: Installeer GIT in Eclipse en voeg (uploaden) Maven Project toe aan GitHub

hier is een video tutorial over “hoe GitHub te installeren in Eclipse en hoe Project te uploaden naar GitHub”:

wees alsjeblieft geduldig. De video wordt over een tijdje geladen.

Wat is Jenkins

Jenkins is een open source automation server. Het ondersteunt ons bij het automatiseren van allerlei taken met betrekking tot het bouwen, implementeren en automatiseren van elk project. Het is cross-platform en kan worden gebruikt op Windows, Mac OS, Linux etc., Als onderdeel van Selenium, gebruiken we het om onze software continu te bouwen en te testen. Het wordt gebruikt voor automatische testuitvoeringen en geplande builds. Met behulp van Jenkins kunnen we ook resultaten publiceren en e-mailmeldingen sturen naar alle teamleden. Jenkins biedt continue integratie en continue levering service voor software ontwikkeling.

hier is de officiële link naar Jenkins documentatie.

tot nu toe hebben we Maven geïnstalleerd, Maven Project aangemaakt in Eclipse en installatie van GIT in Eclipse en Maven Project geüpload naar GitHub. Ook leerden we wat continue integratie is, Maven, GIT en Jenkins. Nu zullen we Jenkins installeren en configureren.

installatie van Jenkins

stap 5: Installatie van Jenkins-controleer deze link

eerder publiceerden we een bericht over installatie van Jenkins, zie dit bericht over hoe Jenkins te installeren

Jenkins configureren voor een Maven-Project

stap 6: Jenkins configureren voor een Maven Project-controleer deze link

eerder publiceerden we een bericht over Jenkins configureren voor een maven project, zie dit bericht over Jenkins configureren voor een maven project

tot nu toe hebben we Maven Project geïnstalleerd en aangemaakt in Eclipse, Maven Project geïnstalleerd en geüpload naar GitHub en Jenkins geïnstalleerd en geconfigureerd voor Maven Project. Nu zullen we GIT plugin configureren in Jenkins.

Git-Plug-In configureren in Jenkins

Stap 7: Git-Plug-In configureren in Jenkins-Volg de onderstaande stappen

7.1 Ga naar Plugins beheren – > filterlijst van plugins beschikbaar met ‘Git Plugin’.

Lees meer over Git Plugin

7.2 controleer de Git Plugin en klik op de knop ‘Install without restart’

in de onderstaande screenshot kan je zien dat ik het al geïnstalleerd heb.

7.3 nadat de installatie is voltooid, herstart Jenkins met het commando in de browser. http://localhost:8080/jenkins/restart

zodra Jenkins HERSTART is, zou de git optie beschikbaar moeten zijn onder broncode beheer bij het configureren van een taak in Jenkins en dit zullen we zien in Stap 8.

7.4 Ga naar Manage Jenkins – > Configure System, geef het juiste pad naar Git executable

stap 8: Maak Maven Project in Jenkins en bouw een taak vanuit Git Project – volg onderstaande stappen

We hebben GIT plugin geconfigureerd in Jenkins. Laten we nu een Maven Project maken en een job bouwen vanuit Git project

8.1 Klik op nieuwe Items – > voer Projectnaam in (zeg GitProject) – > Selecteer Freestyle Project – > klik op OK

u wordt doorgestuurd naar de configuratiepagina. Klik op Source Code Management Tab

8.2 in Source Code Management, Selecteer ‘ Git ‘ optie. (Dit zou zichtbaar moeten zijn als je met succes Git Plugin hebt geïnstalleerd – wat we in Stap 7.3 hebben gedaan).

8.3 geef je git Repository URL (die we hebben vastgelegd in Stap 4-Bekijk video over hoe Repository in Git te maken en kopieer de GIT Repository URL) en kies je referenties en sla je wijzigingen op

Jenkins zal de broncode van het project ophalen van de remote Git Server Gebaseerd op de Repository URL die we hebben doorgegeven.

8.4 in Build-klik op Add build stap en kies roepen top – level Maven targets en pass ‘clean install’ als doelen. Klik op de knop Geavanceerd en geef POM-waarde door als ‘ pom.xml’

opmerking: stel onder Git Plug-in de Globale git in user.name en gebruiker.e-mail om overeen te komen met uw globale configuratieopties

ook kunt u Post-build acties doorgeven om rapporten te genereren. Om TestNG HTML-rapporten te genereren, kiest u TestNG-rapporten publiceren door te klikken op post-build-actie toevoegen en waarde doorgeven als ‘ * * /testng-resultaten.xml ‘

en tenslotte, klik op Opslaan.

leer hoe eenvoudig Maven project in Jenkins

Jenkins continue integratie Project structuur in Eclipse looks zoals hieronder getoond:

uitvoeren van Maven Project van Jenkins

stap 9: uitvoeren van Maven Project van Jenkins-volg onderstaande stappen

laten we het nu uitvoeren.

9.1 klik op’ Build Now ‘ link. Het zal de pom oproepen.xml.

9.2 Klik met de rechtermuisknop op Build nummer (hier in mijn geval is het #1) en klik op Console Output om het resultaat te zien.

je kon Build Status ‘succes’ op Console uitvoer te zien.

ook kunt u Jenkins-taken plannen en een e-mailbericht verzenden na build-run.

voor het plannen van Jenkins job:

Open uw Jenkins job-Configure-Build triggers-Selecteer periodiek bouwen selectievakje en voer uw cron job patroon

bijvoorbeeld: om uw taak elke minuut uit te voeren, moet u * * * * *

Jenkins werkt aan Cron patroon. Meer informatie over de Cron job pattern – wiki link

voor het verzenden van e – mailmeldingen:

Ga naar Jenkins – Configure – Select email notification-Set SMTP configuratie beheren.

u ontvangt een e-mailbericht wanneer het bouwen doorgaat of mislukt.

conclusie:

Selenium continue integratie met Jenkins stelt ons in staat om onze scripts op elke implementatie uit te voeren. Jenkins laat ons executiegeschiedenis en rapporten opslaan. Ik hoop dat deze post u geholpen bij het bereiken van uw doelen. Ik hoop dat je Selenium continue integratie succesvol hebt geïmplementeerd. Aarzel niet te benaderen als u vragen heeft.

hier zijn een paar handgeplukte artikelen die u kunt lezen:

  • hoe Seleniumscripts draaien met behulp van BrowserStack
  • leer Cross Browser Testing Tool
  • Complete Guide-GUI Automation Tool-Froglogic Squish
  • meest populair – selenium Interview Questions
  • TestNG Interview Questions
  • waarom u kiest voor Software testen als Carrière
  • Algemene Interview Questions

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.

Previous post Hoe bestanden tussen Linux en Windows over te brengen via LAN
Next post punt één · van de gaven van de Heilige Geest in het bijzonder, en in het bijzonder