maven with jenkins maven documentation
Denne opplæringen vil forklare alt om Jenkins og integrering av Maven med Jenkins. Du vil også lære å lage dokumentasjon for prosjektet ved hjelp av Maven:
Vi vil bli kjent med hva som er Jenkins, Maven Jenkins Integration, fordelene med Jenkins, hvordan du setter opp Java og Maven i Jenkins, hvordan du lager Jenkins-jobb med forskjellige parametere, resultatresultatrapporter om Jenkins med TestNG-plugins, hvordan du sender Maven kommandoer i form av mål i Jenkins, Maven dokumentasjon for prosjekter, etc i detalj.
=> Se opp The Simple Maven Training Series her.
test data management verktøy åpen kildekode
Hva du vil lære:
Hva er Jenkins?
Jenkins er et kontinuerlig integrasjonsverktøy som har enorm betydning i testing og utvikling av programvare. Det er åpen kildekode og plattformuavhengig. I vårt daglige arbeid håndterer vi automatiseringsrammer som består av flere hundre testsaker.
Inntil nå har vi sett at for å utføre skriptene våre fra Maven-prosjektet, må vi enten kjøre Maven-kommandoer fra ledeteksten eller direkte åpne Eclipse og utløse skriptene.
Så vi utløser testsakene manuelt for utførelse. For å automatisere denne prosessen, må vi planlegge jobber som skal kjøre testsakene våre på et bestemt tidspunkt og også ta vare på noen viktige parametere. Hele denne prosessen er automatisert ved hjelp av Jenkins.
I virkeligheten, hvis vi har rundt 800 testsaker som må utføres klokka tre om morgenen, kan det gjøres enkelt uten å kreve noen manuell inngrep ved hjelp av Jenkin-jobber.
Det er også scenarier når automatiserte Smoke- eller Sanity-testtilfeller må utføres etter at det er noe kodeinnsjekking fra utviklingssiden i miljøet. Alle disse blir tatt hånd om automatisk av Jenkins.
Jenkins har loggen over alle endringene som er gjort i repositories som SVN eller Git. Jenkins kan enkelt installeres i systemet vårt og konfigureres. Det kan også settes opp på mer enn en virtuell maskin hvis bygg må utløses på en distribuert måte. Videre gir den tilgang gjennom lenker til alle de siste versjonene.
Jenkins har funksjoner som integrasjon med TestNG ved hjelp av plugins, e-postvarsler om byggestatus som gjør det mer populært å bruke i dag. Problemer og feil blir fanget og løst veldig tidlig.
Et flertall av integrasjonsoppgavene utføres automatisk, og sparer dermed ressurser og gjør det mulig for programvaren å bli utgitt når som helst uten problemer.
I Agile-miljøet har vi forretningsanalytikere, utviklere og testere som jobber sammen. Som et resultat kan det være en sak at en forretningsanalytiker (en ikke-teknisk person) kan trenge å se og overvåke hvordan utførelsesresultatet er.
I slike tilfeller trenger han kanskje ikke å åpne en formørkelse eller sette opp og kjøre Maven-kommandoer for å utløse manusene. Han kan utføre testsakene ved hjelp av Jenkins og få resultatene av henrettelsen.
Vi er på hjemmesiden til Jenkins med et stillingsnavn som Prosjekt . Hvis en bedrift ønsker å se resultatene av utførelsen, må du klikke på jobbnavnet og omdirigere til siden nedenfor.
Deretter Bygg nå på venstre side av skjermen må du klikke. Dermed trenger vi bare å åpne Jenkins URL (https: // localhost: 8080 / jenkins).
Mens testsaker utløses via Jenkins, er det bare det spesifikke miljøet som tilbys i Jenkins der testsakene blir henrettet. Det er et vanlig scenario at hvis vi utfører testsakene våre utenfor Jenkins, mislykkes de på grunn av versjonen av verktøyene eller språket vårt eller krukkene som ikke er tilpasset det som det skal fungere.
For eksempel, Java-versjonen eller vår Maven-versjon ble oppdatert eller nedgradert. Alle disse kan unngås hvis vi bruker Jenkins jobber for vår henrettelse.
Dermed har Jenkins store bidrag i vårt testrammeverk ved å opprettholde et sentralisert oppsett på tvers av alle geografiske steder.
Fordeler med Jenkins
Fordelene med Jenkins er oppført nedenfor:
- Jenkins er en åpen kildekode, plattformuavhengig og bærbar.
- Den kan enkelt installeres og konfigureres. Den kan brukes med letthet.
- Jenkins har automatisert integreringselementene, og så mange av integreringsproblemene oppstår ikke, og øker dermed effektiviteten og produktiviteten til utviklere.
- Dokumentasjonen er beskrevet godt og gjør det praktisk å lære det.
- Jenkins ble utviklet av utviklerne ved å huske på funksjonene som utviklerne faktisk trenger i arbeidet.
- Den har et stort antall plugins. Alle disse pluginene gjør Jenkins kraftigere og populærere blant utviklerne.
- Jenkins hjelper miljøene som er vert i skyen.
- Det har et stort fellesskap av brukere som er lett tilgjengelige. De jobber med tilbakemeldinger og berører basen regelmessig.
- Jenkins gir hjelp til å teste automatisering på følgende måter:
- Funksjon av planlegging av testutførelse: Testfagpersoner kan planlegge testsakene sine for utførelse og bruke tiden til andre oppgaver.
- Tilpasset testresultatrapport: Jenkins gir detaljer om resultatmønsteret. De grafiske representasjonene og detaljene i utførelsesresultatene gjenspeiler det totale antallet testsaker, utførelsestider og annen viktig informasjon.
- Fungerer riktig med kontinuerlige integrasjonsprosesser: Testtiden blir redusert med Jenkins.
Java og Maven Path satt i Jenkins
Først og fremst må vi ha Java og Maven installert i maskinene våre. Når vi først er på landingssiden til Jenkins, vil det i utgangspunktet ikke være jobber.
Klikk nå på Administrer Jenkins lenke fra venstre på skjermen.
Klikk deretter på Globale verktøykonfigurasjoner . Her må vi gjøre konfigurasjonene for Java og Maven. For å konfigurere Java, klikk på JDK-installasjoner knapp.
Her må vi enten gi Navn og JAVA_HOME sti eller dette kan tas hånd om ved å sjekke Installer automatisk avkrysningsruten.
Deretter må vi gå til Maven-delen og klikke på Maven Installations knapp.
Her må vi enten gi Navn og MAVEN_HOME sti eller dette kan tas vare på ved å sjekke Installer automatisk avkrysningsruten.
Når du har utført disse operasjonene, klikker du på Lagre nederst på siden.
Lag en Jenkins-jobb
Deretter må vi generere en jobb for å utløse manusene til Maven-prosjektet vårt. Klikk på Ny gjenstand lenke fra venstre på skjermen.
Skriv inn en Gjenstandsnavn og velg Freestyle-prosjekt klikk deretter på OK.
Vi navigeres til jobbkonfigurasjonssiden. Her må vi gi all informasjonen som er spesifikk for prosjektet vårt. Først må vi oppgi kilden til prosjektkoden vår.
Jenkins Source Code Management
I Kildekodestyring delen, velger vi vanligvis enten fra GitHub eller Subversion og gi de tilsvarende linkene. Jenkins vil automatisk hente koden derfra.
Imidlertid, hvis koden vår er tilstede i vårt lokale system, må vi klikke på Avansert knappen under generell seksjon , og sjekk deretter Bruk tilpasset arbeidsområde .
Vi må plassere vårt Maven-prosjekt inne i .jenkins mappen og gi banen til pom-filen som ligger inne i Maven-prosjektet $ {JENKINS_HOME}.
På denne måten får Jenkins tak i prosjektets kildekode.
Jenkins brukes ikke bare av testere for å utløse testutførelsen, men brukes også mye av utviklere for sitt arbeid. Noen av disse alternativene er gitt under Bygg miljø seksjon.
Deretter må vi gå til Build-delen og velge Påkalle Maven-mål på toppnivå alternativer fra rullegardinmenyen.
Deretter Påkalle Maven-mål på toppnivå seksjonen utvides. Her Maven versjon vil bli forhåndsutfylt fra Maven-versjonen vi har definert i Global Tool Configuration .
Under mål må vi gi Maven-kommandoen for å utløse kjøringen. mvn test –PRegresjon. I Jenkins kan vi utelate begrepet mvn, og resten av kommandoen er tilstrekkelig.
Klikk på Lagre og vi har vellykket opprettet en jobb.
Bare et sammendrag av det vi har diskutert så langt:
- Plasseringen av koden vår (enten Git, Subversions eller fra en lokal katalog).
- Maven-kommando for å utløse kjøring.
Jobben vår blir opprettet og vil være synlig på Jenkins-destinasjonssiden:
Klikk på Bygg nå fra venstre på skjermen. Det vil være en Bygg historie delen til venstre på skjermen som er synlig etter at bygningen er ferdig. De bygge nummer vil bli synlig etterfulgt av # sammen med tidsstempel . Nå naviger til Konsollutgang .
Resultatene av utførelsen:
TestNG Jenkins Integration For Execution Results Report
For detaljer om testutførelsesresultatene, naviger til Maven-prosjektet i Eclipse, flytt til mål mappen og deretter til surefire-rapporter mappe. Det er en index.html arkiv i sikkerhetsrapportene. Få plasseringen til filen og åpne den i nettleseren.
testng-results.xml fil og TestNG rapporter plugin er nødvendig for resultater i Jenkins.
Klikk på Administrer Jenkins lenke fra venstre på Jenkins-skjermen. Klikk deretter på Administrer programtillegg lenke.
binært søketre c ++ eksempel
Installer TestNG Results Plugin .
Når det er gjort, oppdaterer vi jobben vi har opprettet fra Konfigurer lenke fra venstre på skjermen. Naviger deretter til Handlinger etter bygging seksjonen og velg Publiser TestNG-resultater fra rullegardinmenyen.
testng-results.xml filen i Maven Project blir automatisk fylt ut i TestNG XML-rapportmønster felt som standard. Klikk deretter på Lagre.
Jobbplanlegging i Jenkins
Naviger til Bygg utløsere seksjon for planlegging av byggtider.
Hvis vi velger Bygg med jevne mellomrom , så vil vi ha Rute seksjon synlig. Her må vi nevne fem parametere for å planlegge jobben som vist nedenfor.
- MINUTTER på en time
- TIMER på en dag
- DAYMONTH dag i en måned
- MÅNED om et år
- DAGSUKE ukedag
For å planlegge manusene klokka 8.00 om morgenen må vi spesifisere som vist nedenfor:
Nå skal vi utløse byggingen igjen for å verifisere TestNG-resultatene. Gå til destinasjonssiden til Jenkins og klikk på jobben. Vi skal nå ha en TestNG-resultater lenke på jobbskjermen vår.
I tilfelle utførelsen ikke har noen feil, vil Siste testresultat link viser ingen feil. Klikk på koblingen TestNG-resultater for å få mer informasjon om resultatene.
Vi kan klikke på bygge # nummer for mer informasjon om resultatene.
For å sjekke koden vår, bør vi klikke på Arbeidsområde lenke til venstre på skjermen. På denne måten kan Jenkins og Maven samarbeide.
Maven Dokumentasjon For Prosjekt
Vi kan lage dokumentasjon for prosjektet vårt ved hjelp av Maven. Som diskutert tidligere, består Maven av tre livssykluser, dvs. ren, sted og standard.
Oppgaven med å fjerne eventuelle feil og fjerne gjenstander fra forrige versjon blir tatt vare på i ren syklus. Mens misligholde har ansvaret for den totale distribusjonsprosessen, nettstedet livssyklus er for å lage prosjektdokumentasjonen.
Det regnes som en god praksis å utføre rent før nettstedet, slik at vi har oppdatert dokumentasjon.
Naviger til prosjektmappen og kjør følgende kommando fra ledeteksten.
mvn site
Prosessen med å bygge prosjektet vil starte. Etter vellykket bygging skal prosjektdokumentasjonen genereres som vist nedenfor.
Når du klikker på index.html-filen, kan vi ha detaljert dokumentasjon av prosjektet, hovedsakelig bestående av bygge- og prosjektinformasjon, om prosjektet, kontinuerlig integrering, avhengigheter, adresseliste, lisenser og så videre.
Ofte stilte spørsmål
Sp # 1) Hvordan jobber Jenkins med Maven?
Svar: Jenkins fungerer godt med Maven ved å følge visse forutsetninger. Vi må sette opp Java- og Maven-stier i Jenkins. Deretter må vi opprette Jenkins-jobbene med alle parametrene, inkludert Post Build Actions, planlegge builds og så videre.
Q # 2) Hva er Maven og Jenkins?
Svar: Maven er et prosjektledelse og bygger verktøy utviklet i Java. Jenkins er et kontinuerlig integrasjonsverktøy som er åpen kildekode. Både Maven og Jenkins er mye brukt i bransjen i våre dager.
Spørsmål 3) Hva er Maven-målet i Jenkins?
Svar: Vi gir Maven-kommandoene i Goals-delen av Jenkins. Dette er et viktig skritt når du oppretter en Jenkins-jobb.
Q # 4) Hvorfor bruker vi Maven?
Svar: Maven er et prosjektledelses- og byggeverktøy som drives av en pom.xml-fil. Det har gjort byggeprosessen enkel, enkel og konsistent.
Q # 5) Er Maven et CI-verktøy?
Svar: Nei, Maven er ikke et kontinuerlig integrasjonsverktøy. Det er et byggeverktøy som har flere funksjoner enn Ant. Jenkins er et kontinuerlig integrasjonsverktøy.
Q # 6) Hva er pom xml i Maven?
Svar: Project Object Model eller pom er en xml-fil som danner kjernen til Maven. Den inneholder listen over prosjektavhengigheter, konfigurasjoner, profiler og så videre.
Sp # 7) Kan vi integrere TestNG og Jenkins med Maven?
Svar: Ja, vi kan integrere TestNG og Jenkins med Maven. Alt dette oppnås ved hjelp av plugins.
legge til verdier i en array-java
Q # 8) Hva er de tre byggene i Maven livssyklus?
Svar: De tre standardbygningene av Maven-syklusen er oppført nedenfor.
- Misligholde
- Ren
- Nettstedet
Sp # 9) Hvordan angir Jenkins XML-innstillinger?
Svar: I Jenkins, naviger til Bygg-delen av jobben, og klikk deretter på Avansert. Innstillingsfil alternativet vil være synlig der. Plasseringen av settings.xml skal spesifiseres der.
Sp # 10) Hvordan angir jeg miljøvariabler i Jenkins?
Svar: Miljøvariablene i Jenkins kan settes fra Konfigurer skjerm. I Bygge seksjonen, velg Injiser miljøvariabler . Der må vi oppgi miljøvariabelen som VARIABLE_NAME = VALUE mønster.
Konklusjon
Vi håper en stor del av Maven liker integrasjonen med Jenkins, TestNG-plugins for Jenkins for å vise resultater, jobbskaping på Jenkins, Java og Maven satt opp i Jenkins, globale konfigurasjoner på Jenkins skal lett forstås nå.
Også Jenkins bygger tidsplanmekanismer, dets handlinger etter bygging, hvordan Jenkins håndterer koden som ligger i Git, eller et annet arkiv eller lokalt, er illustrert i detalj her. Øv hvert trinn en etter en, og Maven Jenkins-fusjonen vil være klar. Vi har også utforsket Maven-dokumentasjon for prosjekter.
Jenkins, et kontinuerlig integrasjonsverktøy, har en reell bruk for utviklere, testere, forretningsanalytikere og så videre i en smidig verden. Hver organisasjon ser opp for å bruke og tilpasse kontinuerlige integrasjonsprosesser nå og da.
=> Besøk her for å se Maven Training Series for All.
Anbefalt lesing
- Hva er Maven - Maven Tutorial for nybegynnere
- Gradle Vs Maven And Maven Plugins
- Jenkins CI Tutorial - Hva er Jenkins kontinuerlig integrasjon
- Jenkins Jobs: Konfigurere SCM, bygge jobber og polling SCM
- Jenkins Plugins: SCM, analysatorer og installasjon av plugins
- Integrering av Maven med TestNg ved hjelp av Maven Surefire Plugin
- Jenkins Security: Aktivering av Security & Project Security Matrix
- Konfigurere Maven med Eclipse Java IDE