2012-01-09 13 views
7

Ho letto il sito di Jenkins e il suo plug-in JUnit, e per qualche motivo qualcosa di molto semplice non mi sembra evidente.Jenkins e JUnit

Jenkins ha un plug-in Email-ext per l'invio di e-mail di notifica personalizzate/avanzate ogni volta che viene eseguita una compilazione. In queste email è possibile inserire "token di contenuto" che sono variabili di runtime che vengono sostituite con valori dinamici quando viene generata la posta elettronica.

Uno di questi token è TEST_COUNTS che permette di visualizzare il numero di test JUnit che correvano, o che non è riuscito, ecc

Come si fa a ottenere Jenkins per visualizzare correttamente questa informazione? C'è un plugin di cui ho bisogno, e se sì, quale? Ho la mia build che esegue JUnit e genera un report XML. Presumo che Jenkins analizzi in qualche modo i risultati di JUnit da quell'XML e lo usi per dare valori a quel token.

Ma d'altra parte, ho letto "letteratura" (post di mailing list) che sembra suggerire che per utilizzare quel token è necessario utilizzare Jenkins per eseguire i test di unità, non un task Ant junit da all'interno del tuo script di build.

Qualcuno può chiarire questo per me e forse anche impostare "l'ordine delle operazioni" per quali passaggi devo prendere per poter utilizzare questo token?

Sarebbe sommamente utile per ottenere il conteggio dei test nelle notifiche di build.

risposta

12

La tua prima spiegazione è giusta. Dite Jenkins dove cercare i file di output JUnit, e analizza loro per scoprire i risultati del test:

Screenshot of the Jenkins configuration http://so.mrozekma.com/jenkins-junit-publish.png

I risultati della prova compaiono su ogni progetto e creare la pagina, così finché si sta vedendo i risultati corretti lì, si dovrebbe ottenere il gettone sostituzioni corrette nella tua e-mail

+0

Grazie Michael! Un ultimo elemento ho bisogno di chiarimenti però. Ho il plugin 'Email-ext' configurato ma non vedo nulla che assomigli allo screenshot della tua risposta. Questo mi dice che hai preso lo screenshot dall'interfaccia utente del plugin JUnit, sì? Se è così, dovrò installare il plugin JUnit (se sì, quale - ci sono molti !!!), altrimenti per favore dimmi dove trovare queste opzioni ('Pubblica rapporto sul risultato del test JUnit', ecc.). Grazie ancora! – IAmYourFaja

+5

Questo è sotto le "Azioni post-build" - è lì per impostazione predefinita per i lavori Freestyle e Multi-configuration, almeno. Non sono richiesti plug-in. –

4

aggiungere qualcosa di simile al contenuto della "Notifica email modificabile" configurazione:

Total = $TEST_COUNTS 
Failed = ${TEST_COUNTS,var="fail"} 

raccomando anche esimo e Jenkins users mailing list per le domande di Jenkins, di solito utili.

+0

Grazie e sì, ho già qualcosa del genere. Sta mostrando che "** No tests run **" nella notifica di build, che non è vero (come evidenziato dai report XML che posso vedere nell'area di lavoro di build!). Questo mi dice che non ho Jenkins configurato correttamente per * analizzare * le informazioni XML dai rapporti JUnit. – IAmYourFaja