maven with jenkins maven documentation
Questo tutorial spiegherà tutto su Jenkins e l'integrazione di Maven con Jenkins. Imparerai anche a creare documentazione per il progetto usando Maven:
Scopriremo cos'è Jenkins, l'integrazione di Maven Jenkins, i vantaggi di Jenkins, come impostare Java e Maven in Jenkins, come creare un lavoro Jenkins con parametri diversi, rapporti sui risultati dell'esecuzione di Jenkins con i plugin TestNG, come passare Maven comandi sotto forma di obiettivi in Jenkins, documentazione Maven per progetti, ecc. in dettaglio.
=> Guarda qui la semplice serie di allenamento Maven.
i migliori server su cui giocare wow
Cosa imparerai:
Cos'è Jenkins?
Jenkins è uno strumento di integrazione continua che ha un'enorme importanza nel mondo del test e dello sviluppo del software. È open source e indipendente dalla piattaforma. Nel nostro lavoro quotidiano, ci occupiamo di framework di automazione che comprendono diverse centinaia di casi di test.
Fino ad ora, abbiamo visto che per eseguire i nostri script dal progetto Maven dobbiamo eseguire i comandi Maven dal prompt dei comandi o aprire direttamente Eclipse e attivare gli script.
Quindi stiamo attivando manualmente i casi di test per l'esecuzione. Per automatizzare questo processo, dobbiamo pianificare i lavori che eseguiranno i nostri casi di test in un momento particolare e prenderci cura anche di alcuni parametri importanti. L'intero processo è automatizzato con l'aiuto di Jenkins.
Quindi, in realtà, se abbiamo circa 800 casi di test che devono essere eseguiti alle tre del mattino, allora può essere fatto facilmente senza richiedere alcun intervento manuale con l'aiuto dei lavori di Jenkin.
Inoltre, ci sono scenari in cui è necessario eseguire test case automatizzati di Smoke o Sanity dopo che è stato eseguito un check-in del codice dal lato di sviluppo nell'ambiente. Tutto questo viene gestito automaticamente da Jenkins.
Jenkins ha il registro di tutte le modifiche fatte nei repository come SVN o Git. Jenkins può essere facilmente installato nel nostro sistema e configurato. Inoltre, può essere configurato su più di una macchina virtuale se le build devono essere attivate in modo distribuito. Inoltre, dà accesso tramite link a tutte le build recenti.
Jenkins ha funzionalità come l'integrazione con TestNG con l'aiuto di plugin, notifiche e-mail sullo stato della build che lo rendono più popolare da usare al giorno d'oggi. Problemi e bug vengono rilevati e risolti molto presto.
La maggior parte delle attività di integrazione viene eseguita automaticamente, risparmiando così risorse e consentendo al software di essere rilasciato in qualsiasi momento senza problemi.
Nell'ambiente Agile, abbiamo analisti aziendali, sviluppatori e tester che lavorano insieme. Di conseguenza, potrebbe esserci un caso in cui un analista aziendale (una persona non tecnica) potrebbe aver bisogno di vedere e monitorare come è il risultato dell'esecuzione.
In questi casi, potrebbe non essere necessario aprire un Eclipse o configurare ed eseguire comandi Maven per attivare gli script. Può eseguire i casi di test con l'aiuto di Jenkins e ottenere i risultati dell'esecuzione.
Siamo nella home page di Jenkins con un nome di lavoro come Progetto . Se un'azienda desidera vedere i risultati dell'esecuzione, è necessario fare clic sul nome del lavoro e verrà reindirizzato alla pagina seguente.
Poi Costruisci ora sulla sinistra dello schermo deve essere cliccato. Quindi dobbiamo solo aprire l'URL di Jenkins (https: // localhost: 8080 / jenkins).
Sebbene i test case vengano attivati tramite Jenkins, è solo l'ambiente specifico fornito in Jenkins in cui vengono eseguiti i test case. È uno scenario comune che se stiamo eseguendo i nostri casi di test al di fuori di Jenkins, allora vengono falliti a causa della versione dei nostri strumenti o del linguaggio o dei vasi non allineati a quello che dovrebbe funzionare.
Per esempio, la versione Java o la nostra versione Maven è stata aggiornata o declassata. Tutto ciò può essere evitato se utilizziamo i lavori di Jenkin per la nostra esecuzione.
Pertanto, Jenkins ha un contributo importante nel nostro framework di test mantenendo una configurazione centralizzata in tutte le posizioni geografiche.
Vantaggi di Jenkins
I vantaggi di Jenkins sono elencati di seguito:
- Jenkins è un open source, indipendente dalla piattaforma e portatile.
- Può essere installato e configurato facilmente. Può essere utilizzato con facilità.
- Jenkins ha automatizzato gli elementi di integrazione e molti dei problemi di integrazione non si verificano, aumentando così l'efficienza e la produttività degli sviluppatori.
- La sua documentazione è descritta bene e ne facilita l'apprendimento.
- Jenkins è stato sviluppato dagli sviluppatori tenendo presente le funzionalità di cui gli sviluppatori hanno effettivamente bisogno nel lavoro.
- Ha un gran numero di plugin. Tutti questi plugin rendono Jenkins più potente e popolare tra gli sviluppatori.
- Jenkins assiste gli ambienti ospitati sul cloud.
- Ha una grande comunità di utenti facilmente accessibili. Lavorano sui feedback e si toccano regolarmente.
- Jenkins fornisce assistenza per testare l'automazione nei seguenti modi:
- Funzionalità della pianificazione dell'esecuzione dei test: I professionisti dei test possono pianificare i loro casi di test per l'esecuzione e utilizzare il loro tempo per altre attività.
- Rapporto sui risultati del test personalizzato: Jenkins fornisce dettagli sul modello dei risultati. Le rappresentazioni grafiche ei dettagli dei risultati di esecuzione riflettono il numero totale di casi di test, i tempi di esecuzione e altre informazioni importanti.
- Funziona correttamente con i processi di integrazione continua: Il tempo di test si riduce con Jenkins.
Percorso di Java e Maven impostato a Jenkins
Prima di tutto, dobbiamo avere Java e Maven installati sulle nostre macchine. Una volta che siamo sulla pagina di destinazione di Jenkins, inizialmente non ci saranno lavori.
Ora fai clic su Gestisci Jenkins collegamento dalla sinistra dello schermo.
Quindi fare clic su Configurazioni globali degli strumenti . Qui dobbiamo fare le configurazioni per Java e Maven. Per la configurazione di Java, fare clic su Installazioni JDK pulsante.
Qui dobbiamo dare uno o l'altro Nome e JAVA_HOME percorso o questo può essere risolto controllando Installa automaticamente casella di controllo.
Successivamente, dobbiamo passare alla sezione Maven e fare clic su Maven Installations pulsante.
Qui dobbiamo dare uno o l'altro Nome e MAVEN_HOME percorso o questo può essere risolto controllando il Installa automaticamente casella di controllo.
Dopo aver eseguito queste operazioni, fare clic su Salva Nella parte inferiore della pagina.
Crea un lavoro Jenkins
Successivamente, dobbiamo generare un lavoro per attivare gli script del nostro progetto Maven. Clicca sul Nuovo oggetto collegamento dalla sinistra dello schermo.
Inserisci un Nome dell'oggetto e seleziona il file Progetto Freestyle opzione quindi fare clic su OK.
Verremo indirizzati alla pagina di configurazione del lavoro. Qui dobbiamo fornire tutte le informazioni specifiche del nostro progetto. All'inizio, dobbiamo fornire l'origine del codice del nostro progetto.
Gestione del codice sorgente Jenkins
Nel Gestione del codice sorgente sezione, in genere selezioniamo uno dei file GitHub o Sovversione e fornire i collegamenti corrispondenti. Jenkins otterrà automaticamente il codice da lì.
Tuttavia, se il nostro codice è presente nel nostro sistema locale, dobbiamo fare clic su Avanzate pulsante sotto il generale sezione , e quindi controlla Usa un'area di lavoro personalizzata .
Dobbiamo posizionare il nostro progetto Maven all'interno di .jenkins cartella e fornire il percorso del file pom residente all'interno del progetto Maven a partire da $ {JENKINS_HOME}.
In questo modo, Jenkins ottiene il codice sorgente del progetto.
Jenkins non viene utilizzato solo dai tester per attivare l'esecuzione del test, ma è anche ampiamente utilizzato dagli sviluppatori per il loro lavoro. Alcune di queste opzioni sono fornite in Ambiente di costruzione sezione.
Successivamente, dobbiamo passare alla sezione Build e selezionare Invoca il target Maven di primo livello opzioni dal menu a discesa.
Poi Invoca obiettivi Maven di primo livello la sezione verrà ampliata. Qui Versione Maven sarà precompilato dalla versione Maven che abbiamo definito nel file Configurazione globale degli strumenti .
In Obiettivi, dobbiamo fornire il comando Maven per attivare l'esecuzione. test mvn –PRegression. In Jenkins, possiamo omettere il termine mvn e il resto del comando è sufficiente.
Clicca su Salva e abbiamo creato con successo un lavoro.
Solo un riepilogo di ciò di cui abbiamo discusso finora:
- Posizione del nostro codice (Git, Subversions o da una directory locale).
- Comando Maven per attivare l'esecuzione.
Il nostro lavoro verrà creato e sarà visibile nella landing page di Jenkins:
Clicca sul Costruisci ora dalla sinistra dello schermo. Ci sarà un Storia della costruzione sezione a sinistra dello schermo visibile al termine della compilazione. Il numero di build sarà visibilmente seguito da # insieme con il timestamp . Ora vai al file Uscita console .
I risultati dell'esecuzione:
TestNG Jenkins Integration for Execution Results Report
Per i dettagli del risultato dell'esecuzione del test, accedere al progetto Maven in Eclipse, passare al file bersaglio cartella quindi al file rapporti infallibili cartella. C'è un index.html file all'interno dei rapporti infallibili. Ottieni la posizione del file e aprilo nel browser.
testng-results.xml file e il plug-in dei rapporti TestNG sono necessari per i risultati in Jenkins.
Clicca su Gestisci Jenkins collegamento dalla sinistra dello schermo di Jenkins. Quindi fare clic su Gestisci plugin collegamento.
sito web di prova in diversi browser gratuitamente
Installa il file Plugin Risultati TestNG .
Una volta terminato, aggiorneremo il lavoro che abbiamo creato dal file Configura collegamento dalla sinistra dello schermo. Quindi vai al file Azioni post-compilazione sezione e seleziona Pubblica i risultati di TestNG dal menu a discesa.
testng-results.xml file nel nostro progetto Maven viene automaticamente popolato nel file Modello di report XML TestNG campo per impostazione predefinita. Quindi fare clic su Salva.
Pianificazione del lavoro a Jenkins
Vai al file Crea trigger sezione per la pianificazione dei tempi di costruzione.
Se selezioniamo Costruisci periodicamente , quindi avremo il file Programma sezione visibile. Qui dobbiamo menzionare cinque parametri per programmare il lavoro come mostrato di seguito.
- MINUTI in un'ora
- ORE in un giorno
- DAYMONTH giorno in un mese
- MESE in un anno
- DAYWEEK giorno della settimana
Per programmare gli script alle 8:00 del mattino dobbiamo specificare come mostrato di seguito:
Ora attiveremo di nuovo la build, per verificare i risultati di TestNG. Vai alla pagina di destinazione di Jenkins e fai clic sul lavoro. Ora avremo un file Risultati TestNG link all'interno della nostra schermata di lavoro.
Nel caso in cui l'esecuzione non abbia errori, il file Ultimo risultato del test il collegamento non mostrerà errori. Fare clic sul collegamento Risultati TestNG per ottenere maggiori dettagli sui risultati.
Possiamo fare clic sul file build # numero per maggiori dettagli sui risultati.
Per controllare il nostro codice, dovremmo fare clic su Area di lavoro collegamento a sinistra dello schermo. In questo modo, Jenkins e Maven possono lavorare insieme.
Documentazione Maven per il progetto
Possiamo creare documentazione per il nostro progetto con l'aiuto di Maven. Come discusso in precedenza, Maven comprende tre cicli di vita, ovvero clean, site e default.
Il compito di rimuovere eventuali errori e rimuovere gli artefatti della build precedente è curato nel pulito ciclo. Mentre il predefinito è responsabile del processo di distribuzione totale, il posto lifecycle serve per creare la documentazione del progetto.
È considerata una buona pratica eseguire la pulizia prima del sito in modo da avere una documentazione aggiornata.
Passa alla cartella del progetto ed esegui il seguente comando dal prompt dei comandi.
mvn site
Inizierà il processo di costruzione del progetto. Dopo il successo della compilazione, la documentazione del progetto verrà generata come mostrato di seguito.
Facendo clic sul file index.html, possiamo avere una documentazione dettagliata del progetto composta principalmente dalle informazioni di compilazione e progetto, sul progetto, integrazione continua, dipendenze, mailing list, licenze e così via.
Sezione FAQ
D # 1) Come funziona Jenkins con Maven?
Risposta: Jenkins funziona bene con Maven seguendo alcune precondizioni. Dobbiamo configurare percorsi Java e Maven in Jenkins. Quindi dobbiamo creare i lavori Jenkins con tutti i parametri, comprese le azioni di post-compilazione, la pianificazione delle build e così via.
D # 2) Cosa sono Maven e Jenkins?
Risposta: Maven è uno strumento di creazione e gestione dei progetti sviluppato in Java. Jenkins è uno strumento di integrazione continua open source. Sia Maven che Jenkins sono ampiamente utilizzati nell'industria al giorno d'oggi.
D # 3) Qual è l'obiettivo di Maven a Jenkins?
Risposta: Forniamo i comandi Maven nella sezione Obiettivi di Jenkins. Questo è un passaggio chiave durante la creazione di un lavoro Jenkins.
Q # 4) Perché usiamo Maven?
Risposta: Maven è uno strumento di creazione e gestione dei progetti guidato da un file pom.xml. Ha reso il processo di compilazione semplice, facile e coerente.
D # 5) Maven è uno strumento CI?
Risposta: No, Maven non è uno strumento di integrazione continua. È uno strumento di compilazione con più funzionalità di Ant. Jenkins è uno strumento di integrazione continua.
Q # 6) Cos'è pom xml in Maven?
Risposta: Project Object Model o pom è un file xml che costituisce il nucleo di Maven. Contiene l'elenco delle dipendenze del progetto, delle configurazioni, dei profili e così via.
D # 7) Possiamo integrare TestNG e Jenkins con Maven?
Risposta: Sì, possiamo integrare TestNG e Jenkins con Maven. Tutto ciò si ottiene con l'aiuto di plugin.
come implementare un semplice albero di ricerca binario in java
D # 8) Quali sono le tre build del ciclo di vita di Maven?
Risposta: Le tre build standard del ciclo Maven sono elencate di seguito.
- Predefinito
- Pulito
- Posto
Q # 9) Come impostare le impostazioni XML di Jenkins?
Risposta: In Jenkins, vai alla sezione Costruisci del lavoro, quindi fai clic su Avanzate. File delle impostazioni l'opzione sarà visibile lì. La posizione di settings.xml deve essere specificata lì.
Q # 10) Come imposto le variabili ambientali in Jenkins?
Risposta: Le variabili ambientali in Jenkins possono essere impostate da Configura schermo. Nel Costruire sezione, seleziona Iniettare variabili di ambiente . Qui dobbiamo fornire la variabile d'ambiente come VARIABLE_NAME = VALUE pattern.
Conclusione
Ci auguriamo che una gran parte di Maven come la sua integrazione con Jenkins, i plug-in TestNG per Jenkins per visualizzare i risultati, la creazione di lavoro su Jenkins, Java e Maven impostato a Jenkins, le configurazioni globali su Jenkins dovrebbero essere facilmente comprese ora.
Inoltre, i meccanismi di pianificazione della compilazione di Jenkins, le sue azioni post-compilazione, il modo in cui Jenkins gestisce il codice che risiede in Git, o in qualsiasi altro repository o in locale è stato illustrato in dettaglio qui. Pratica ogni passaggio uno per uno e la fusione di Maven Jenkins sarà chiara. Abbiamo anche esplorato la documentazione Maven per i progetti.
Jenkins, uno strumento di integrazione continua, ha un reale utilizzo per sviluppatori, tester, analisti aziendali e così via in un mondo agile. Ogni organizzazione cerca di utilizzare e adattare di tanto in tanto i processi di integrazione continua.
=> Visita qui per vedere la serie di formazione Maven per tutti.
Lettura consigliata
- Cos'è Maven - Tutorial Maven per principianti
- Plugin Gradle Vs Maven e Maven
- Tutorial CI di Jenkins - Cos'è l'integrazione continua di Jenkins
- Lavori Jenkins: configurazione di SCM, creazione di lavori e polling SCM
- Plugin Jenkins: SCM, analizzatori e installazione di plugin
- Integrazione di Maven con TestNg utilizzando il plug-in Maven Surefire
- Sicurezza Jenkins: Abilitazione della sicurezza e matrice di sicurezza del progetto
- Configurazione di Maven con Eclipse Java IDE