maven dependency integration with eclipse
V tej vadnici bomo podrobno razpravljali o integraciji Mavena z Eclipse in TestNG, Maven Dependency Scope in Maven Deployment Automation:
V prejšnji vadnici smo razpravljali o primerjavi med Gradle vs Maven in Maven Plugins. V tej vadnici je razloženo, kako Maven integrirati z drugimi orodji, Mavenovo odvisnostjo in Maven Deployment.
vprašanja in odgovori za intervjuje s tehnično podporo pdf
Začnimo!
=> Obiščite tukaj za ekskluzivno vadnico Maven Training Series.
Kaj se boste naučili:
- Integracija Mavena z Eclipseom
- Integracija Mavena s testNG
- Obseg odvisnosti Maven
- Maven Deployment Automation
- Maven Release Plugin
- Zaključek
- Priporočeno branje
Integracija Mavena z Eclipseom
O tem, kako integrirati Maven z Eclipse, smo o tem že podrobno razpravljali strani
V nekaterih scenarijih, ko iz ukaznega poziva zgradimo projekt Maven in ga moramo pripeljati v Eclipse, je treba izvesti naslednje korake.
# 1) Pomaknite se do mesta datoteke pom za projekt Maven. Zaženite spodnji ukaz.
mvn eclipse: mrk
# 2) .classpath in .projekt bo ustvarjen na lokaciji projekta Maven.
Preverite, ali je vtičnik Maven že na voljo v programu Eclipse from Windows => Preference , Maven bi moral biti tam prisoten. Vse trenutne različice Eclipse imajo privzeto vtičnike Maven in če jih ni, jih lahko dobimo pri tukaj .
# 3) Zdaj, da Maven in Eclipse delujeta skupaj, uvozite projekt Maven iz datoteke. Nato izberite Obstoječi projekt Maven.
# 4) Prebrskajte lokacijo projekta in nadaljujte.

Zgornja slika prikazuje projekt Maven, uvožen v Eclipse.
Integracija Mavena s testNG
Na spodnji strani smo podrobno razpravljali o tem, kako integrirati Maven s testNG.
=> Integracija Mavena z TestNg z uporabo Maven Surefire Plugin
Medtem ko smo v svoj projekt integrirali Maven s programom TestNG, lahko obstajajo situacije, ko ima naš projekt več datotek Testng xml. Na primer celotne funkcije regresijskega paketa so opisane v eni testng.xml, primeri primernosti pa v drugi datoteki testng.xml.
V takšni situaciji moramo uporabiti profil koncept v Mavenu. V datoteki pom moramo definirati profile. Vsak je del oznake in je povezan z njo.
Spodaj je podana datoteka pom.xml, ki ima delček kode profilov:
Regression org.apache.maven.plugins maven-surefire-plugin 2.20.1 testngRegression.xml Sanity org.apache.maven.plugins maven-surefire-plugin 2.20.1 testngSanity.xml
Upoštevajte, da imamo zgoraj dva profila, opisana pod, in vsak profil ima povezan ID. Na primer Regresija in Razum prav tako smo pod suiteXmlFiles definirali ime datoteke xml Testng, ki ustreza id ( testngRegression.xml in testngSanity.xml ).
je omrežni ključ enak geslu
Tako imamo tukaj dva profila in lahko vsako datoteko Testng nadzorujemo s pomočjo ene same datoteke pom.
Zdaj, da sprožimo testni primer za vsako datoteko Testng neposredno iz ukaznega poziva, se moramo premakniti v mapo projekta in zagnati naslednji ukaz.
mvn test –PRegression
Ko je to izvedeno, Maven poišče profil z ID-jem Regresija in ustreznim testngRegression.xml mapa. Tako se izvedejo samo tam vključeni testi.
Podobno je za profil z id Sanity ukaz:
mvn test –PSanity
Tukaj testngSanity.xml datoteka se uporablja za določanje testnih primerov, ki jih je treba izvesti. Tako za sprožitev določenega nabora testnih primerov ni treba spremeniti imena datoteke TestNG v pom, temveč jo je mogoče enostavno doseči z vzdrževanjem ločenih datotek TestNG.
V datoteki pom lahko te datoteke preslikamo in jih na koncu zaženemo s pomočjo profilov v Mavenu iz ukaznega poziva.
Obseg odvisnosti Maven
Maven ima skupaj šest področij, kot je navedeno spodaj.
- Zagotovljeno
- Preizkus
- Sistem
- Uvozi
- Sestavi
- Izvajanje
# 1) Obseg izvajanja
Odvisnost Mavena ima obseg kot izvajalno okolje in se ne uporablja za gradnjo. Predstavlja razredno pot za izvajanje in testiranje projekta. Spodnji delček kode prikazuje odvisnost od obsega izvajanja.
com.softwaretesting MavenJava 2.3 runtime
# 2) Obseg sistema
Odvisnost Mavena z obsegom kot sistemom je podobna predvidenemu obsegu. Sistemskih odvisnosti ni mogoče prenesti iz oddaljenega repozitorija in so običajno v imenikih projekta. Spodnji delček kode prikazuje odvisnost sistemskega obsega.
com.software MavenJava1 system 3.0 ${dir}warWEB-INFlibdep.jar
# 3) Področje uporabe
Za gradnjo in testiranje projektov je potrebna odvisnost Maven, ki ima predviden obseg. Te odvisnosti ni priporočljivo izvoziti, saj so na voljo med izvajanjem. Vendar je ta odvisnost potrebna za zagon gradnje. Spodnji delček kode prikazuje zagotovljeno odvisnost od obsega.
com.test MavenJava2 5.1.1 provided
# 4) Obseg preskusa
Odvisnost Mavena, ki ima obseg testa, ni potrebna za izdelavo in izvajanje projekta. V bistvu se uporabljajo za sestavljanje in vodenje testnih primerov enot. Spodnji delček kode prikazuje odvisnost preskusnega obsega.
com.testing MavenJava3 1.0.2 test
# 5) Obseg uvoza
V pom datoteki je odvisnostUpravljanje Odsek vsebuje obseg uvoza. To pomeni, da je treba odvisnost spremeniti z učinkovito skupino odvisnosti, ki je navedena v razdelku dependencyManagement datoteke pom. Spodnji delček kode prikazuje odvisnost od obsega uvoza.
com.testhelp MavenJava4 SNAP import pom
# 6) Obseg prevajanja
Privzeta je odvisnost Maven, ki ima obseg prevajanja. Ta odvisnost je bistvenega pomena za izdelavo, testiranje in izvajanje projekta. To je večinoma pomembno za reševanje izvorne kode Java z uvoznimi stavki. Spodnji delček kode prikazuje odvisnost od obsega prevajanja.
logging log 2.1.3 compile
Maven Deployment Automation
Uvajanje projekta je kritična faza in vključuje več korakov, opredeljenih spodaj:
- Koda se je razvila za preverjanje v skladišču.
- Izvorna koda za prenos iz skladišča.
- Sestavljanje in izdelava aplikacije ter ustvarjanje datotek JAR ali WAR.
- Prenos identificiranih datotek JAR ali WAR na znano omrežno mesto.
- Naložite datoteke JAR ali WAR.
- Prenesene datoteke JAR ali WAR razmestite na ciljni strežnik.
- Številka nove različice aplikacije in datum, ki ga je treba posodobiti v dokumentaciji.
Zgoraj omenjenim korakom sledi vsak član skupin, vključenih v projekt. Iz zgoraj naštetih korakov, če koga zamudijo ali karkoli ne storijo pravilno, potem to povzroči neuspeh pri gradnji in uvajanju . Torej, če je prišlo do napak, jih je treba samodejno odpraviti.
Maven sledi metodi avtomatizacije uvajanja, da postane uvajanje samodejno in zanesljivo. To dosežemo s kombinacijo spodaj naštetih postopkov:
- Za gradnjo in izdajo projekta bo poskrbel Maven.
- Izvorno kodo, ki jo upravlja subverzija in repozitorij izvorne kode.
- Projektne binarne datoteke, ki bodo skrbele za oddaljenega upravitelja skladišča.
Za Mavenov avtomatiziran postopek izdelave in izdaje skrbi Maven Release plug-in. Datoteko pom.xml je treba posodobiti, kot je prikazano spodaj.
Spodnja koda je za projekt com.softwaretestHelp pom.xml
4.0.0 com.softwaretestHelp TestApplication war 2.0 WebTest Maven Java http://maven.apache.org http://www.svn.com scm:svn:http://localhost:8080/svn/jrepo/trunk/Framework scm:svn:testing/test@localhost:8080:common_core_api:1101:code SampleTest-Web-Release Release repository http://localhost:8082/nexus/content/repositories/SampleTest-Web-Release org.apache.maven.plugins maven-release-plugin 2.0-beta-9 false deploy (SampleTest-Web- checkin) junit junit 3.9 test
Izstopajoče funkcije v zgornji datoteki pom.xml so navedene spodaj:
znak v int c ++
- SCM : Mesto SVN (kjer je izvorna koda) konfigurira SCM.
- Repozitoriji : To je mesto datotek JAR ali WAR ali EAR ali katerega koli drugega artefakta projekta po uspešnem zaključku gradnje projekta.
- Vključiti : Avtomatizacija uvajanja, ki jo izvaja vtičnik za izdajo Maven.
Maven Release Plugin
Maven release plugin izvaja naslednje dejavnosti:
- izdaja mvn: čisto - Očisti delovni prostor prejšnje gradnje pred prihodom prihodnje gradnje.
- izdaja mvn: povračilo - V primeru okvare prejšnje gradnje se vrne v delovni prostor.
- izdaja mvn: pripravi - Preveri, ali je v datotekah prišlo do kakršnih koli nezavezanih sprememb. Prav tako preveri odvisnosti od posnetkov in posodobi številko različice aplikacije. Spreminja pom v SCM. Skrbi za izvajanje testnega primera in končno kodo zaveže SCM. Izvaja označevanje kode v subverziji. Nazadnje se številka različice poveča in priloži SNAPSHOT za druge izdaje v prihodnosti s tem vtičnikom.
- izdaja mvn: izvedba - Preveri kodo, ki je prisotna v repozitoriju, in nato zažene cilje gradnje Maven za razmestitev artefakta gradnje v repozitorij.
Na koncu moramo za izdelavo projekta zagnati spodnji ukaz:
mvn release: prepare
Ko je uspešen zaključek gradnje končan, zaženite naslednji ukaz:
mvn release: perform
Zdaj je datoteka WAR naložena v odlagališče.
Zaključek
Upamo, da bi morali biti glavni deli integracije Mavena z Eclipseom, integracija s TestNG, profili Maven, obseg odvisnosti Mavena in avtomatizacija uvajanja Mavena zdaj razumljivi. Tu smo obravnavali tudi večino področij odvisnosti.
Za postopek uvajanja Mavena smo podrobno preučili vse korake in razložili nekatere vtičnike za izdajo Maven. Preberite teme in postopoma boste razumeli resnično bistvo uporabe Mavena pri našem delu.
Nadaljevali bomo s serijo in zbirali znanje o integraciji Maven Jenkins, vprašanjih za Maven intervju itd. V naših prihajajočih vajah.
=> Tukaj preverite VSE Vadnice za Maven.
Priporočeno branje
- Kaj je Maven - Vadnica za začetnike Maven
- Vadnice za globinsko zasenčenje za začetnike
- Vadnica za TestNG: Uvod v ogrodje TestNG
- Vadnica za Eclipse: Vključevanje TestNG v Eclipse Java IDE
- Konfiguriranje Maven z Eclipse Java IDE
- Gradle Vs Maven In Maven Plugins
- Maven z Jenkinsom in Mavenom dokumentacija za projekte
- Integracija Mavena z TestNg z uporabo Maven Surefire Plugin