maven with jenkins maven documentation
Ta vadnica vam bo razložila vse o Jenkinsu in integraciji Mavena z Jenkinsom. Naučili se boste tudi ustvariti dokumentacijo za projekt z Mavenom:
Spoznali bomo, kaj je Jenkins, integracija Maven Jenkins, prednosti Jenkinsa, kako nastaviti Jenko in Maven v Jenkinsu, kako ustvariti Jenkinsovo delovno mesto z različnimi parametri, poročila o rezultatih izvajanja Jenkinsa z vtičniki TestNG, kako prenesti Maven podrobno ukaze v obliki ciljev v Jenkinsu, dokumentacijo Maven za projekte itd.
=> Tukaj si oglejte Enostavno vadbeno serijo Maven.
najboljši brezplačni čistilci registra za Windows 10
Kaj se boste naučili:
Kaj je Jenkins?
Jenkins je orodje za nenehno integracijo, ki je izjemnega pomena pri testiranju in razvoju programske opreme. Je odprtokodna in neodvisna od platforme. Pri vsakodnevnem delu imamo opravka z avtomatizacijskimi okviri, ki obsegajo več sto testnih primerov.
Do zdaj smo videli, da moramo za izvajanje skript iz projekta Maven bodisi zagnati ukaze Maven iz ukaznega poziva bodisi neposredno odpreti Eclipse in sprožiti skripte.
Tako ročno sprožimo testne primere za izvedbo. Za avtomatizacijo tega postopka moramo razporediti opravila, ki bodo izvajala naše testne primere ob določenem času in poskrbeti tudi za nekatere pomembne parametre. Ves ta postopek je avtomatiziran s pomočjo Jenkinsa.
Če imamo v resnici približno 800 testnih primerov, ki jih je treba opraviti ob treh zjutraj, potem je to mogoče enostavno, brez kakršnega koli ročnega posega s pomočjo Jenkinovih delovnih mest.
Obstajajo tudi scenariji, ko je treba avtomatizirane testne primere Smoke ali Sanity zagnati po prijavi kode s strani razvoja v okolju. Za vse to samodejno poskrbi Jenkins.
Jenkins ima dnevnik vseh sprememb, izvedenih v repozitorijih, kot sta SVN ali Git. Jenkinsa je mogoče enostavno namestiti v naš sistem in jih konfigurirati. Prav tako ga je mogoče nastaviti na več kot enem navideznem računalniku, če je treba gradnje sprožiti na porazdeljen način. Poleg tega omogoča dostop prek povezav do vseh zadnjih graditev.
Jenkins ima funkcije, kot so integracija s TestNG s pomočjo vtičnikov, e-poštna obvestila o stanju gradnje, zaradi česar je danes bolj priljubljena. Težave in napake se ujamejo in rešijo zelo zgodaj.
Večina nalog integracije se izvede samodejno, s čimer prihranimo vire in omogočimo, da se programska oprema kadar koli sprosti brez težav.
V okolju Agile sodelujemo poslovni analitiki, razvijalci in preizkuševalci. Posledično lahko pride do tega, da bo poslovni analitik (netehnična oseba) moral videti in spremljati, kakšen je rezultat izvršitve.
V takih primerih mu morda ne bo treba odpreti Eclipseja ali nastaviti in zagnati ukazov Maven, da sproži skripte. Testne primere lahko izvrši s pomočjo Jenkinsa in dobi rezultate izvedbe.
Smo na domači strani Jenkins z imenom službe kot Projekt . Če želi podjetje videti rezultate izvedbe, je treba klikniti ime opravila in preusmeriti na spodnjo stran.
Potem Zgradite zdaj na levi strani zaslona je treba klikniti. Tako moramo samo odpreti Jenkinsov URL (https: // localhost: 8080 / jenkins).
Medtem ko se testni primeri sprožijo prek Jenkinsa, se v Jenkinsu izvaja le določeno okolje, kjer se testni primeri izvajajo. Pogost je scenarij, da če izvajamo testne primere zunaj Jenkinsa, potem ne uspejo zaradi različice našega orodja ali jezika ali kozarcev, ki niso poravnani z enim, kar naj bi delovalo.
Na primer, različica Java ali naša različica Maven je bila posodobljena ali znižana. Vsemu temu se je mogoče izogniti, če za izvršbo uporabljamo Jenkinova delovna mesta.
Tako ima Jenkins velik prispevek v našem testnem okviru z vzdrževanjem centralizirane postavitve na vseh geografskih lokacijah.
Prednosti Jenkinsa
Prednosti Jenkinsa so navedene spodaj:
- Jenkins je odprtokodna, neodvisna od platforme in prenosna.
- Lahko ga enostavno namestite in konfigurirate. Uporablja se lahko z lahkoto.
- Jenkins je avtomatiziral elemente integracije, zato se toliko težav z integracijo ne pojavlja, s čimer se poveča učinkovitost in produktivnost razvijalcev.
- Njegova dokumentacija je dobro opisana in omogoča enostavno učenje.
- Jenkinsa so razvili razvijalci, pri čemer so upoštevali funkcije, ki jih razvijalci dejansko potrebujejo pri delu.
- Ima veliko število vtičnikov. Vsi ti vtičniki naredijo Jenkinsa močnejšega in priljubljenega med razvijalci.
- Jenkins pomaga okoljem, gostovanim v oblaku.
- Ima veliko skupnost uporabnikov, ki so lahko dostopni. Redno delajo na povratnih informacijah in na dotik.
- Jenkins nudi pomoč pri testiranju avtomatizacije na naslednje načine:
- Značilnost načrtovanja izvedbe testa: Testni strokovnjaki lahko načrtujejo svoje testne primere za izvedbo in izkoristijo svoj čas za druge naloge.
- Poročilo o rezultatih po meri: Jenkins poda podrobnosti o vzorcu rezultatov. Grafični prikazi in podrobnosti rezultatov izvajanja odražajo skupno število testnih primerov, čas izvedbe in druge pomembne informacije.
- Pravilno deluje s postopki neprekinjene integracije: Z Jenkinsom se čas testiranja skrajša.
Pot Java in Maven v Jenkinsu
Najprej moramo imeti v svojih strojih nameščeno Javo in Maven. Ko smo na ciljni strani Jenkinsa, sprva ne bo več služb.
Zdaj kliknite na Upravljajte Jenkinsa povezava z leve strani zaslona.
Nato kliknite Globalne konfiguracije orodij . Tu moramo opraviti konfiguracije za Javo in Maven. Za nastavitev Jave kliknite Namestitve JDK .
Tukaj moramo bodisi dati Ime in JAVA_HOME poti ali pa je za to mogoče poskrbeti s preverjanjem Namestite samodejno potrditveno polje.
Nato se moramo premakniti na razdelek Maven in klikniti na Namestitve Maven .
Tukaj moramo bodisi dati Ime in MAVEN_HOME pot ali pa je za to mogoče poskrbeti s preverjanjem Namestite samodejno potrditveno polje.
Po izvedbi teh operacij kliknite Shrani na dnu strani.
Ustvari Jenkinsovo delovno mesto
Nato moramo ustvariti opravilo za sprožitev skriptov našega projekta Maven. Kliknite na Nov izdelek povezava z leve strani zaslona.
Vnesite Ime predmeta in izberite Projekt prostega sloga nato kliknite V redu.
Preusmerjeni bomo na stran s konfiguracijo opravila. Tu moramo navesti vse informacije, specifične za naš projekt. Sprva moramo navesti izvor naše projektne kode.
Jenkins Upravljanje izvorne kode
V Upravljanje izvorne kode razdelka, navadno izberemo enega izmed GitHub ali Subverzija in zagotovite ustrezne povezave. Jenkins bo kodo samodejno dobil kodo.
Če pa je naša koda prisotna v našem lokalnem sistemu, moramo klikniti na Napredno pod gumbom splošno oddelku , in nato preverite Uporabite delovni prostor po meri .
Naš projekt Maven moramo umestiti znotraj .jenkins mapo in podajte pot datoteke pom, ki se nahaja v projektu Maven, začenši z $ {JENKINS_HOME}.
Na ta način Jenkins dobi izvorno kodo projekta.
Preizkuševalcev Jenkinsa ne uporabljajo le za sprožitev izvajanja preizkusa, temveč ga razvijalci pogosto uporabljajo tudi za svoje delo. Nekatere od teh možnosti so na voljo v Gradite okolje oddelku.
Nato se moramo premakniti v razdelek Build in izbrati Prikličite cilj Maven na najvišji ravni možnosti iz spustnega menija.
Potem Prikličite najvišje cilje Maven razdelek bo razširjen. Tukaj Različica Maven bo vnaprej izpolnjen od različice Maven, ki smo jo opredelili v Globalna konfiguracija orodja .
V okviru Cilji moramo zagotoviti ukaz Maven, ki bo sprožil izvršitev. mvn test –napredek. V Jenkinsu lahko izraz mvn izpustimo in preostanek ukaza zadostuje.
Kliknite na Shrani in uspešno smo ustvarili delovno mesto.
Samo povzetek tega, o čemer smo razpravljali do zdaj:
- Lokacija naše kode (bodisi Git, Subversions ali iz lokalnega imenika).
- Ukaz Maven za sprožitev izvršitve.
Naše delo bo ustvarjeno in vidno na Jenkinsovi ciljni strani:
Kliknite na Zgradite zdaj z leve strani zaslona. Tam bo Zgradi zgodovino odsek na levi strani zaslona, viden po končani gradnji. The številka gradnje bo vidno sledil # skupaj z časovni žig . Zdaj se pomaknite do Izhod konzole .
Rezultati izvedbe:
TestNG Jenkins Integration for Report Execution Report
Za podrobnosti o rezultatih preizkusa se pomaknite do projekta Maven v Eclipse, premaknite se na cilj mapo, nato v zanesljiva poročila mapo. Obstaja index.html datoteko znotraj poročil o zanesljivosti. Poiščite lokacijo datoteke in jo odprite v brskalniku.
testng-results.xml datoteka in dodatek za poročila TestNG je potreben za rezultate v Jenkinsu.
Kliknite na Upravljajte Jenkinsa povezava z leve strani Jenkinsovega zaslona. Nato kliknite Upravljanje vtičnikov povezava.
za vohunjenje drugega telefona
Namestite Vtičnik za rezultate TestNG .
Ko bomo končali, bomo posodobili delovno mesto, ki smo ga ustvarili v Konfigurirajte povezava z leve strani zaslona. Nato se pomaknite do Dejanja po izdelavi in izberite Objavi rezultate TestNG od spustnega menija.
testng-results.xml datoteka v našem projektu Maven se samodejno zapolni v Vzorec poročila TestNG XML privzeto. Nato kliknite Shrani.
Razpored dela v Jenkinsu
Pomaknite se do Zgradite sprožilce odsek za razporejanje časov gradnje.
Če izberemo Občasno gradite , potem bomo imeli Razpored odsek viden. Tu moramo omeniti pet parametrov za razpored dela, kot je prikazano spodaj.
- MINUT v eni uri
- URE v enem dnevu
- DAYMONTH dan v mesecu
- MONTH v letu
- DAYWEEK dan v tednu
Če želite razporediti skripte ob 8:00 zjutraj, moramo določiti, kot je prikazano spodaj:
Zdaj bomo znova sprožili gradnjo, da preverimo rezultate TestNG. Pojdite na ciljno stran Jenkinsa in kliknite na opravilo. Zdaj bomo imeli a Rezultati TestNG povezava znotraj našega zaslona za delo.
V primeru, da pri izvedbi ni nobenih napak, Najnovejši rezultat testa povezava ne bo pokazala nobenih napak. Za več podrobnosti o rezultatih kliknite povezavo TestNG Results.
Lahko kliknemo na graditi # številko za več podrobnosti o rezultatih.
Če želite preveriti kodo, kliknite na Delovni prostor povezava na levi strani zaslona. Na ta način lahko Jenkins in Maven sodelujeta.
Mavenova dokumentacija za projekt
Dokumentacijo za naš projekt lahko ustvarimo s pomočjo Mavena. Kot smo že omenili, Maven vključuje tri življenjske cikle, to je čisto, mesto in privzeto.
Za nalogo odstranjevanja morebitnih napak in odstranjevanja artefaktov prejšnje gradnje je poskrbljeno v čisto cikel. Medtem ko privzeto je odgovoren za celoten postopek uvajanja, spletnem mestu življenjski cikel je za izdelavo projektne dokumentacije.
Šteje se, da je dobra praksa, da pred spletnim mestom opravimo čisto tako, da imamo na voljo posodobljeno dokumentacijo.
Pomaknite se do mape projekta in v ukaznem pozivu zaženite naslednji ukaz.
mvn site
Začel se bo postopek gradnje projekta. Po uspehu gradnje se izdela projektna dokumentacija, kot je prikazano spodaj.
S klikom na datoteko index.html lahko dobimo podrobno dokumentacijo o projektu, ki jo sestavljajo predvsem informacije o gradnji in projektu, o projektu, stalni integraciji, odvisnostih, poštnem seznamu, licencah itd.
Pogosta vprašanja
V # 1) Kako Jenkins sodeluje z Mavenom?
Odgovor: Jenkins dobro sodeluje z Mavenom, tako da upošteva določene predpogoje. V Jenkinsu moramo postaviti poti Java in Maven. Nato moramo ustvariti Jenkinsova delovna mesta z vsemi parametri, vključno z Post Build Actions, načrtovanjem gradnje itd.
V # 2) Kaj sta Maven in Jenkins?
Odgovor: Maven je orodje za upravljanje projektov in gradnjo, razvito v Javi. Jenkins je odprtokodno orodje za stalno integracijo. Tako Maven kot Jenkins se danes pogosto uporabljata v industriji.
V # 3) Kakšen je cilj Mavena v Jenkinsu?
Odgovor: Zagotavljamo ukaze Maven v razdelku Cilji Jenkinsa. To je ključni korak pri ustvarjanju dela Jenkins.
V # 4) Zakaj uporabljamo Maven?
Odgovor: Maven je orodje za upravljanje projektov in gradnjo, ki ga poganja datoteka pom.xml. Postopek gradnje je poenostavil, enostavno in dosledno.
V # 5) Ali je Maven orodje za CI?
Odgovor: Ne, Maven ni stalno orodje za integracijo. Je orodje za gradnjo, ki ima več funkcij kot Ant. Jenkins je orodje za nenehno integracijo.
V # 6) Kaj je pom xml v Mavenu?
Odgovor: Projektni objektni model ali pom je datoteka xml, ki tvori jedro Mavena. Vsebuje seznam odvisnosti od projekta, konfiguracij, profilov itd.
V # 7) Ali lahko integriramo TestNG in Jenkinsa z Mavenom?
Odgovor: Da, TestNG in Jenkinsa lahko združimo z Mavenom. Vse to dosežemo s pomočjo vtičnikov.
koliko vrst datotek obstaja? python
V # 8) Katere so tri gradnje življenjskega cikla Mavena?
Odgovor: Spodaj so navedene tri standardne gradnje cikla Maven.
- Privzeto
- Čisto
- Spletna stran
V # 9) Kako nastaviti Jenkinsove nastavitve XML?
Odgovor: V Jenkinsu se pomaknite do razdelka Build v opravilu in kliknite Napredno. Datoteka z nastavitvami možnost bo vidna tam. Tam je treba določiti lokacijo settings.xml.
V # 10) Kako v Jenkinsu nastavim okoljske spremenljivke?
Odgovor: Okoljske spremenljivke v Jenkinsu lahko nastavite z Konfigurirajte zaslon. V Build , izberite Vbrizgajte spremenljivke okolja . Tam moramo zagotoviti spremenljivko okolja, kot je VARIABLE_NAME = vzorec VALUE.
Zaključek
Upamo, da je velik del Mavena, kot je njegova integracija z Jenkinsom, vtičniki TestNG za Jenkins za prikaz rezultatov, ustvarjanje delovnih mest v Jenkinsu, Javi in Mavenu, ustanovljenem v Jenkinsu, zdaj globalne konfiguracije na Jenkinsu enostavno razumljivo.
Tukaj je podrobno prikazan tudi Jenkins, ki gradi mehanizme urnika, njegove akcije po gradnji, kako Jenkins obravnava kodo, ki se nahaja v Gitu ali katerem koli drugem repozitoriju ali lokalno. Vadite vsak korak en za drugim in fuzija Mavena Jenkinsa bo jasna. Za projekte smo preučili tudi dokumentacijo Maven.
Jenkins, orodje za nenehno integracijo, se v agilnem svetu resnično uporablja za razvijalce, preizkuševalce, poslovne analitike itd. Vsaka organizacija si vsake toliko prizadeva za uporabo in prilagajanje nenehnih integracijskih procesov.
=> Obiščite tukaj, da si ogledate Maven Training Series for All.
Priporočeno branje
- Kaj je Maven - Maven Vadnica za začetnike
- Gradle Vs Maven In Maven Plugins
- Jenkins CI Vadnica - Kaj je Jenkinsova nenehna integracija
- Jenkins Jobs: Konfiguriranje SCM, gradnja delovnih mest in anketa SCM
- Jenkins vtičniki: SCM, analizatorji in namestitev vtičnikov
- Integracija Mavena z TestNg z uporabo Maven Surefire Plugin
- Jenkins Security: Omogočanje varnosti in varnostne matrice projekta
- Konfiguriranje Maven z Eclipse Java IDE