Selenium Integrointi Mavenin ja Jenkins
โก รlykรคs yhteenveto
Maven Jenkins Selenium integrointi luo automatisoidun jatkuvan testausputken, jossa Maven hallitsee projektin riippuvuuksia ja elinkaarta, Jenkins aikatauluttaa ja kรคynnistรครค koontiversioita ja Selenium suorittaa selaintestejรค, mikรค tuottaa toistettavaa, luotettavaa ja skaalautuvaa kokonaisvaltaista web-automaatiota.

Mikรค on Jenkins in Selenium?
Jenkins on johtava avoimen lรคhdekoodin jatkuvan integraation tyรถkalu, jonka alun perin kehitti Hudson-laboratorio. Se on alustojenvรคlinen ja toimii Windows, Linux, macOSja Solaris ympรคristรถissรค. Jenkins on kirjoitettu Java ja jaetaan nyt seuraavasti Jenkins LTS vakaaseen tuotantokรคyttรถรถn. Sen pรครคasiallinen kรคyttรถtarkoitus on minkรค tahansa tyรถn valvonta, joka voi olla SCM-tarkistus, cron-aikataulu tai mikรค tahansa sovelluksen tila. Jenkins kรคynnistรครค ennalta mรครคritettyjรค toimintoja, kun tietty vaihe tapahtuu tyรถtehtรคvissรค.
Tรคrkeรคt ominaisuudet Jenkins
- Muuta tuki: Jenkins luo listan kaikista muutoksista, jotka on tehty repositorioissa, kuten Git tai SVN.
- Pysyvรคt linkit: Jenkins tarjoaa suorat linkit uusimpaan tai viimeisimpรครคn epรคonnistuneeseen koontiin, mikรค yksinkertaistaa tiimin vรคlistรค viestintรครค.
- Asennus: Jenkins on helppo asentaa natiivilla asennusohjelmalla, sovelluspalvelimelle asennetulla WAR-tiedostolla tai Docker-kuvalla.
- Sรคhkรถpostin integrointi: Jenkins voidaan mรครคrittรครค lรคhettรคmรครคn sรคhkรถpostia jokaisen koonnin sisรคllรถstรค ja tilasta.
- Helppo konfigurointi: Eri tehtรคvien mรครคrittรคminen Jenkins on suoraviivaista verkkokรคyttรถliittymรคn kautta.
- TestNG Testi: Jenkins voidaan konfiguroida suorittamaan automaatiotestin koontiversio TestNG jokaisen repositorioon tehdyn commitin jรคlkeen.
- Useita virtuaalikoneita: Jenkins voi jakaa koontiversioita useille agenttikoneille.
- Projektin rakentaminen: Jenkins dokumentoi JAR-tiedostojen, JAR-versioiden ja kartan tiedotping koontinumeroista artefakteihin.
- Plugins: 3rd osapuolten laajennuksia voidaan lisรคtรค Jenkins laajentaa ominaisuuksia ja lisรคtรค toimintoja.
Miksi Jenkins ja Selenium?
- Running Selenium testit Jenkins voit suorittaa testisi aina, kun ohjelmisto muuttuu, ja ottaa ohjelmiston kรคyttรถรถn uudessa ympรคristรถssรค, kun testit lรคpรคisevรคt sen.
- Jenkins voit aikatauluttaa oman Selenium testit suoritettavaksi tiettyyn aikaan.
- Voit tallentaa suoritushistorian ja testiraportit trackyky
- Jenkins tukee Mavenia rakentamiseen ja Testaus jatkuvassa integraatiossa oleva projekti.
Mitรค Maven sisรคltรครค Selenium?
Maven on tehokas projekti- ja koontityรถkalu, joka perustuu POM-malliin (Project Object Model). Se sisรคltรครค projektitiedot ja Mavenin mรครคritystiedot, kuten koontihakemiston, lรคhdekoodihakemiston, riippuvuudet, testilรคhdehakemiston, tavoitteet, laajennukset ja paljon muuta. Maven 3.x on nykyinen vakaa versio, jota kรคytetรครคn laajalti eri ohjelmissa. Selenium testikehykset.
Miksi Maven ja Jenkins
Selenium WebDriver on loistava selaimen automatisointiin. Mutta testaukseen ja testikehyksen rakentamiseen kรคytettynรค se voi tuntua alitehoiselta. Mavenin integrointi Selenium tarjoaa seuraavat edut.
Apache Maven tarjoaa tukea testiprojektin koko elinkaaren hallintaan.
- Mavenia kรคytetรครคn projektirakenteen, riippuvuuksien, rakentamisen ja testauksen hallinnan mรครคrittรคmiseen.
- pom.xml:n (Maven) avulla voit mรครคrittรครค koodin rakentamiseen, testaamiseen ja suorittamiseen tarvittavia riippuvuuksia.
- Maven lataa tarvittavat tiedostot automaattisesti keskitetystรค arkistosta projektin rakentamisen aikana.
Kuinka asentaa Maven ja kรคyttรครค sitรค TestNG Selenium
Tรคssรค ovat Mavenin asentamisen ja kรคytรถn vaiheet TestNG Selenium.
Kรคytรคmme tรคtรค opetusohjelmaa varten Eclipse (Juno) IDE-ympรคristรถ Java Kehittรคjรคt perustavat Selenium WebDriver-projekti. Lisรคksi meidรคn on lisรคttรคvรค m2eclipse-laajennus Eclipse helpottaakseen rakennusprosessia ja luodakseen pom.xml-tiedoston.
Lisรคtรครคnpรค m2eclipse-laajennus tรคhรคn Eclipse seuraavilla vaiheilla:
Vaihe 1) In Eclipse IDE, valitse Apu: | Asenna uusi ohjelmisto mistรค Eclipse pรครคvalikko.
Vaihe 2) Kirjoita asennusvalintaikkunaan URL https://www.eclipse.org/m2e/. Valita Tyรถskennellรค ja m2e-laajennus, kuten seuraavassa kuvakaappauksessa nรคkyy:
Vaihe 3) Klikkaa seuraava -painiketta ja viimeistele asennus.
Configure Eclipse Mavenin kanssa
Kun m2e-laajennus on asennettu, meidรคn on nyt luotava Maven-projekti.
Vaihe 1) In Eclipse IDE, luo uusi projekti valitsemalla filee | Uusi | Muut mistรค Eclipse valikosta.
Vaihe 2) On Uusi valintaikkunasta Maven | Maven projekti ja napsauta Seuraava.
Vaihe 3) On Uusi Maven-projekti valintaikkuna Luo yksinkertainen projekti ja napsauta Seuraava.
Vaihe 4) Kirjoita WebdriverTest sisรครคn Ryhmรคn tunnus: ja Artefaktin tunnus: ja napsauta Valmis.
Vaihe 5) Eclipse luo WebdriverTest seuraavalla rakenteella:
Vaihe 6) Napsauta hiiren kakkospainiketta JRE System Library Ja valitse Kiinteistรถt vaihtoehto valikosta.
On JRE System Libraryn ominaisuudet valintaikkuna, varmista Tyรถtilan oletus-JRE on valittuna ja napsauta OK.
Vaihe 7) valita pom.xml alkaen Project Explorer.
pom.xml-tiedosto avautuu Editor-osiossa.
Vaihe 8) Lisรครค Selenium, Maven, TestNGja JUnit riippuvuudet tiedostoon pom.xml tiedostossa solmu:
<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>
Vaihe 9) Luoda uusi TestNG Luokka. Kirjoita paketin nimi muodossa โesimerkkiโ ja โNewTestโ Nimi: tekstilaatikko ja napsauta Suorittaa loppuun -painiketta seuraavan kuvakaappauksen mukaisesti:
Vaihe 10) Eclipse luo NewTest-luokan seuraavan kuvakaappauksen mukaisesti:
Vaihe 11) Lisรครค seuraava koodi Uusi Test luokka. Tรคmรค koodi tarkistaa luokan otsikon. Guru99 Selenium sivu.
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();
}
}
Vaihe 12) Napsauta WebdriverTest-projektia hiiren kakkospainikkeella ja valitse TestNG | Muuntaa TestNG.
Eclipse luo testng.xml-tiedoston, jossa mรครคritetรครคn, ettรค sinun tarvitsee suorittaa vain yksi testi nimellรค Uusi Test kuten seuraavassa kuvakaappauksessa nรคkyy:
Pรคivitรค projekti ja varmista, ettรค tiedosto nรคkyy puussa Pakettienhallinta (Napsauta projektia hiiren kakkospainikkeella - Pรคivitรค).
Vaihe 13) Nyt sinun tรคytyy suorittaa testi tรคmรคn lรคpi testng.xml.
Joten mene osoitteeseen Suorita mรครคritykset ja luo uusi julkaisu TestNG, valitse projekti, aseta kenttรค Sviitti as testng.xmlja napsauta Suorita.
Varmista, ettรค rakennustyรถt valmistuvat onnistuneesti.
Vaihe 14) Lisรคksi meidรคn on lisรคttรคvรค
- maven-compiler-plugin
- maven-surefire-plugin
- testng.xml
pom.xml-tiedostoon.
maven-surefire-pluginia kรคytetรครคn testien konfigurointiin ja suorittamiseen. Tรคssรค pluginia kรคytetรครคn testing.xml-tiedoston konfigurointiin seuraavaa varten: TestNG testaa ja luo testiraportteja.
maven-compiler-pluginia kรคytetรครคn koodin kรครคntรคmisen apuna ja tietyn JDK-version kรคyttรคmiseen kรครคntรคmisessรค. Lisรครค kaikki seuraavan koodinpรคtkรคn riippuvuudet pom.xml-tiedostoon kohdassa solmu:
Vaihe 15) Suorittaaksesi Mavenin elinkaaren testit, napsauta hiiren kakkospainikkeella WebdriverTest-projektia ja valitse Suorita nimellรค | Maven testiMaven suorittaa testin projektista.
Varmista, ettรค rakennustyรถt valmistuvat onnistuneesti.
Kuinka integroida Jenkins Selenium web-ajuri
Tรคssรค on asennusvaiheet Jenkins LTS ja mรครคritรค se ajamaan Mavenia TestNG Selenium.
Asennus
Vaihe 1) Mene https://www.jenkins.io/download/ ja lataa oikea Jenkins LTS-paketti kรคyttรถjรคrjestelmรคllesi. Asenna Jenkins.
Vaihe 2) Avata jnk vetoketju Jenkins mรครคritettyyn kansioon. Suorita exe-tiedosto seuraavan kuvakaappauksen mukaisesti:
Vaihe 3) In Jenkins Perustaa napsauta ikkunaa seuraava painiketta.
Vaihe 4) Klikkaa install -painiketta lopussa.
Vaihe 5) Kun asennus on valmis, siirry kohtaan Jenkins Kojelauta (oletuksena http://localhost:8080) selainikkunassa.
Vaihe 6) Klikkaa Uusi kohde linkki CI-tyรถn luomiseen.
Vaihe 7) Valitse Maven-projektin valintanappi seuraavan kuvakaappauksen mukaisesti:
Build-sovelluksen kรคyttรคminen a Maven projekti vaihtoehto, Jenkins tukee Maven-projektien rakentamista ja testaamista.
Vaihe 8) Napsauta OK-painiketta. Uusi tyรถ nimeltรค โWebdriverTestโ luodaan Jenkins Kojelautaan.
Vaihe 9) Mene hoitaa Jenkins => Mรครคritรค jรคrjestelmรค kuten seuraavassa kuvakaappauksessa nรคkyy.
Napsauta JDK-asennukset ja mรครคritรค JDK seuraavan kuvakaappauksen mukaisesti:
Vaihe 10) Siirry Rakentaa osio uudesta tyรถstรค.
- In Juuri POM tekstikenttรครคn, anna pom.xml-tiedoston koko polku
- Kirjoita Tavoitteet ja asetukset -osioon โpuhdas testiโ
Vaihe 11) Klikkaa kรคyttรครค painiketta.
Vaihe 12) Napsauta WebdriverTest-projektisivulla Rakenna nyt linkki.
Maven rakentaa projektin. Sillรค sitten on TestNG suorittaa testitapaukset.
Vaihe 13) Kun rakennusprosessi on valmis, kohdassa Jenkins Napsauta kojelaudassa WebdriverTest projekti.
Vaihe 14) WebdriverTest-projektisivulla nรคkyy rakennushistoria ja linkit tuloksiin seuraavan kuvakaappauksen mukaisesti:
Vaihe 15) Napsauta "Viimeisin testitulos" -linkkiรค nรคhdรคksesi testitulokset seuraavan kuvakaappauksen mukaisesti:
Vaihe 16) Valitse tietty koontiversio, niin nรคet nykyisen tilan napsauttamalla "konsolin lรคhtรถ".
Ajoitus Jenkins automaattista suoritusta varten
Koontitรถiden aikataulutus (Selenium testit) on yksi tรคrkeimmistรค ominaisuuksista Jenkins, jossa se kรคynnistรครค automaattisesti koonnin mรครคriteltyjen kriteerien perusteella. Jenkins tarjoaa useita tapoja kรคynnistรครค koontiprosessi Build Trigger -mรครคrityksissรค.
Esimerkiksi:
Kirjoita Aikataulu-tekstiruutuun 0 23 * * * seuraavan kuvakaappauksen mukaisesti. Tรคmรค kรคynnistรครค rakennusprosessin joka pรคivรค klo 11
Kรคyttรคminen Jenkins ilman Mavenia
Puhtaan ajamiseksi TestNG kรคsikirjoitus sisรครคn Jenkins, kirjoita build-kohtaan seuraavat tiedot:
D:>java -cp โPathtolibfolder\lib\*;Pathtobinfolder\binโ org.testng.TestNG testng.xml
- Napsauta Tallenna-painiketta.
- Huomautus: lib- ja bin-kansioiden todellinen polku on lisรคttรคvรค yllรค olevaan komentoon.
- Komennon tallentamisen jรคlkeen Jenkins rakentaa projektin ennalta mรครคritettyyn aikaan, ja tรคmรค komento suoritetaan kรคyttรคmรคllรค TestNG.
- Tulos tallennetaan mukautettuun HTML-raporttitiedostoon, joka voidaan lรคhettรครค sรคhkรถpostitse kรคyttรคmรคllรค Jenkins kokoonpano.
- Koodin tuloste on:
Kรคytรถn edut Jenkins
- Varhainen ongelmien havaitseminen โ virheet voidaan havaita ohjelmistokehityksen alkuvaiheessa.
- Automaattinen integrointi โ kaikkien muutosten integrointiin ei tarvita erillistรค tyรถtรค.
- Asennusohjelma โ kรคyttรถรถnotettava jรคrjestelmรค, joka on kรคytettรคvissรค missรค tahansa kehitysvaiheessa.
- Tiedot โ aiempien rakennusten tiedot sรคilytetรครคn.
- Tuki ja lisรคosat โ yksi syy siihen, miksi Jenkinsn suosio perustuu laajaan yhteisรถtukeen. Saatavilla on myรถs paljon valmiita lisรคosia, jotka auttavat laajentamaan sen toiminnallisuutta.




































