Maven & Jenkins -integraatio Selenium oppitunti
Missä Jenkins on? Selenium?
Jenkins on Hudson Labin kehittämä johtava avoimen lähdekoodin jatkuva integrointityökalu. Se on monialustainen ja sitä voidaan käyttää Windows, Linux, Mac OS ja Solaris ympäristöissä. Jenkins on kirjoitettu Java. Jenkinin pääasiallinen käyttötarkoitus on valvoa mitä tahansa työtä, joka voi olla SVN checkout, cron tai mikä tahansa sovellustila. Se käynnistää esikonfiguroidut toiminnot, kun työssä tapahtuu tietty vaihe.
Jenkinsin tärkeitä ominaisuuksia
- Muuta tuki: Jenkins luo luettelon kaikista muutoksista, jotka on tehty arkistoissa, kuten SVN.
- Pysyvät linkit: Jenkins tarjoaa suorat linkit uusimpaan koontiversioon tai epäonnistuneeseen koontiversioon, joita voidaan käyttää helppoon viestintään
- Asennus: Jenkins on helppo asentaa joko käyttämällä suoraa asennustiedostoa (exe) tai sotatiedostoa sovelluspalvelimen avulla.
- Sähköpostin integrointi: Jenkins voidaan määrittää lähettämään koontiversion tilan sisältö sähköpostitse.
- Helppo konfigurointi: Erilaisten tehtävien määrittäminen Jenkinsissä on helppoa.
- TestNG testata: Jenkins voidaan määrittää suorittamaan automaatiotestirakennetta Testng jokaisen SVN-koonnoksen jälkeen.
- Useita virtuaalikoneita: Jenkins voidaan määrittää jakamaan koontiversio useille koneille.
- Projektin rakenne: Jenkins dokumentoi purkin yksityiskohdat, jar-version sekä koonti- ja jar-numeroiden kartoituksen.
- Plugins: 3rd party-laajennus voidaan määrittää Jenkinsissä käyttämään ominaisuuksia ja lisätoimintoja.
Miksi Jenkins ja Selenium?
- Running Selenium Testit Jenkinsissä mahdollistavat testien suorittamisen joka kerta, kun ohjelmisto muuttuu, ja ottaa ohjelmiston käyttöön uudessa ympäristössä, kun testit läpäisevät.
- Jenkins voi ajoittaa testit suoritettavaksi tiettyyn aikaan.
- Voit tallentaa suoritushistorian ja testiraportit.
- Jenkins tukee Mavenia rakentamaan ja Testaus jatkuvassa integraatiossa oleva projekti.
Mitä Maven sisältää Selenium?
Maven on tehokas projektin / koontiversion hallintatyökalu, joka perustuu POM-konseptiin (Project Object Model), joka sisältää projektitiedot ja Mavenin konfigurointitiedot, kuten rakennushakemiston, lähdehakemiston, riippuvuuden, testilähdehakemiston, tavoitteet, laajennukset jne. .
Miksi Maven & Jenkins
Selenium WebDriver sopii erinomaisesti selaimen automatisointiin. Mutta kun sitä käytetään testaamiseen ja testikehyksen rakentamiseen, se tuntuu alivoimaiselta. 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(Maven) -tiedoston avulla voit määrittää riippuvuudet, joita tarvitaan testauksen rakentamiseen ja koodin suorittamiseen.
- Maven lataa automaattisesti tarvittavat tiedostot arkistosta projektin rakentamisen aikana.
Kuinka asentaa Maven ja käyttää sitä TestNG Selenium
Tässä on vaiheet Mavenin asentamiseen ja sen käyttämiseen TestNG Selenium
Käytämme tätä opetusohjelmaa varten Eclipse (Juno) IDE for Java Kehittäjät määritettäväksi Selenium WebDriver-projekti. Lisäksi meidän on lisättävä m2eclipse-laajennus Eclipse helpottaa rakennusprosessia ja luoda pom.xml-tiedosto.
Lisätään m2eclipse-laajennus Eclipse seuraavilla vaiheilla:
Vaihe 1) In Eclipse IDE, valitse Apu: | Asenna uusi ohjelmisto alkaen Eclipse Päävalikko.
Vaihe 2) Kirjoita Asenna-valintaikkunassa URL-osoite https://www.eclipse.org/m2e/. Valitse Työskennellä ja m2e-laajennus seuraavan kuvakaappauksen mukaisesti:
Vaihe 3) Valitse 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 alkaen Eclipse valikosta.
Vaihe 2) On Uusi valintaikkunasta Maven | Maven projekti ja napsauta Seuraava
Vaihe 3) On Uusi Maven-projekti valintaikkunassa valitse Luo yksinkertainen projekti ja napsauta Seuraava
Vaihe 4) Kirjoita WebdriverTest sisään Ryhmän tunnus: ja Artefaktin tunnus: ja napsauta lopeta
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, TestNG, 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 "esimerkiksi" ja "NewTest" -kenttään 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 vahvistaa Guru99:n nimen 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 hiiren kakkospainikkeella WebdriverTestiä ja valitse TestNG | Muuntaa TestNG.
Eclipse luo testng.xml:n, jossa sanotaan, että sinun on suoritettava vain yksi testi tällä 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 on suoritettava testi tämän läpi testng.xml.
Joten mene osoitteeseen Suorita määritykset ja luo uusi julkaisu TestNG, valitse projekti ja kenttä Sviitti as testng.xml ja napsauta Suorita
Varmista, että rakennus on valmis.
Vaihe 14). Lisäksi meidän on lisättävä
- maven-compiler-plugin
- maven-surefire-plugin
- testng.xml
osoitteeseen pom.xml.
Maven-surefire-laajennusta käytetään testien määrittämiseen ja suorittamiseen. Tässä laajennusta käytetään testing.xml:n määrittämiseen TestNG testaa ja luo testiraportteja.
Maven-compiler-pluginia käytetään apuna koodin kääntämisessä ja tietyn JDK-version käyttämisessä kääntämiseen. Lisää kaikki seuraavan koodinpätkän riippuvuudet tiedostoon pom.xml solmu:
Vaihe 15) Juoksemaan the testit Mavenin elinkaaressa, napsauta hiiren kakkospainikkeella WebdriverTestiä ja valitse Suorita nimellä | Maven testi. Maven suorittaa testin projektista.
Varmista, että rakennus on valmis.
Kuinka integroida Jenkins kanssa Selenium web-ajuri
Tässä on ohjeet Jenkinsin asentamiseen ja sen määrittämiseen suorittamaan Maven TestNg:n avulla Selenium
Asennus
Vaihe 1) Mene http://jenkins-ci.org/ ja lataa oikea paketti käyttöjärjestelmällesi. Asenna Jenkins.
Vaihe 2) Pura Jenkins määritettyyn kansioon. Suorita exe-tiedosto seuraavan kuvakaappauksen mukaisesti:
Vaihe 3) In Jenkins 1.607 -asennus ikkuna klikkaa seuraava painiketta.
Vaihe 4) Valitse install painiketta lopussa.
Vaihe 5) Kun asennus on valmis, siirry selainikkunassa Jenkins Dashboardiin (oletuksena http://localhost:8080).
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 Dashboardiin.
Vaihe 9) Mene Jenkinsin hallinta => Määritä järjestelmä kuten seuraavassa kuvakaappauksessa näkyy.
Napsauta JDK-asennukset ja määritä JDK seuraavan kuvakaappauksen mukaisesti:
Vaihe 10) Siirry Rakentaa osa uutta työtä.
- In Juuri POM tekstikenttään, kirjoita koko polku tiedostoon pom.xml
- Kirjoita Tavoitteet ja vaihtoehdot -osioon "puhdas testi"
Vaihe 11) Valitse 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, napsauta Jenkins Dashboardissa 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 rakennus, ja näet nykyisen tilan napsauttamalla "konsolin lähtö".
Jenkinsin ajoittaminen automaattiseen suoritukseen.
Rakennusten ajoitus (Selenium Testit) on yksi Jenkinsin tärkeistä ominaisuuksista, jossa se käynnistää koonnoksen automaattisesti määritettyjen kriteerien perusteella. Jenkins tarjoaa useita tapoja käynnistää rakennusprosessi Build Trigger -kokoonpanon alla.
Esimerkiksi:
Kirjoita Aikataulu-tekstiruutuun 0 23 * * * seuraavan kuvakaappauksen mukaisesti. Tämä käynnistää rakennusprosessin joka päivä klo 11
Jenkingsin käyttäminen ilman Mavenia
Jos haluat suorittaa puhtaan TestNg-komentosarjan Jenkinsissä, kirjoita seuraava rakennukseen
D:>java -cp “Pathtolibfolder\lib\*;Pathtobinfolder\bin” org.testng.TestNG testng.xml
- Napsauta Tallenna-painiketta.
- Huomautus: lib- ja bin-kansion todellinen polku on lisättävä yllä olevaan komentoon.
- Komennon tallentamisen jälkeen Jenkins rakentaa projektin ennalta määritetyssä ajassa, ja tämä komento suoritetaan käyttämällä TestNG.
- Tulos tallennetaan mukautettuun HTML-raporttitiedostoon, joka voidaan lähettää sähköpostitse Jenkin-määrityksellä
- Koodi tulostetaan
Jenkinsin käytön edut
- Varhainen ongelman havaitseminen – Virhe voidaan havaita ohjelmistokehityksen varhaisessa vaiheessa
- Automaattinen integrointi – kaikkien muutosten integrointi ei vaadi erillistä työtä
- Installer – käyttöön otettava järjestelmä, joka on saatavilla missä tahansa kehitysvaiheessa
- Tietueet – osa rakentaa tietueita ylläpidetään
- Tuki ja lisäosat: Yksi Jenkinin suosion syistä on laajan yhteisön tuen saatavuus. Saatavilla on myös paljon valmiita laajennuksia, jotka auttavat sinua laajentamaan sen toimintoja.