Alias pour compiler avec création de fichiers logs (complet + FAILLURE)

dev
compilation
test-unitaire
maven
Tags: #<Tag:0x00007fe7b002d128> #<Tag:0x00007fe7b002cfe8> #<Tag:0x00007fe7b002cea8> #<Tag:0x00007fe7b002cd68>

#1

alias bash pour compiler avec maven :

  • en affichant à fin les lignes en échec (FAILURE) et leur nombre
  • en sauvegardant le log complet dans un fichier log_maven.log
  • en sauvegardant les lignes en échec (FAILURE) dans un fichier log_maven-FAIL.log
alias  mvn_compile='mvn clean install | tee log_maven.log ; cat log_maven.log| grep "<<< FAILURE! -" | tee log_maven-FAIL.log ; FAIL=`cat log_maven-FAIL.log | wc -l` ;  cat log_maven.log | grep "WARN" > log_maven-WARM.log ; WARM=`cat log_maven-WARM.log | wc -l`  ;  echo "$FAIL FAILURE \n $WARM WARN";'

C’est la solution actuel que j’ai trouvé
pour identifier facilement les tests unitaires en échec.

Exemple d’une compilation sur la branche develop à ce jour :

(...)
[INFO] asqatasun-runner ................................... SUCCESS [  6.928 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:41 min
[INFO] Finished at: 2016-10-22T17:35:13+02:00
[INFO] Final Memory: 125M/1293M
[INFO] ------------------------------------------------------------------------
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.038 sec <<< FAILURE! - in org.asqatasun.rules.rgaa30.Rgaa30Rule080901Test
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.031 sec <<< FAILURE! - in org.asqatasun.rules.rgaa32016.Rgaa32016Rule080901Test
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.058 sec <<< FAILURE! - in org.asqatasun.rules.rgaa32016.Rgaa32016Rule060201Test
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.06 sec <<< FAILURE! - in org.asqatasun.rules.rgaa32016.Rgaa32016Rule060101Test
Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.062 sec <<< FAILURE! - in org.asqatasun.rules.rgaa32016.Rgaa32016Rule060301Test
5 FAILURE 
 523 WARN

le nombre 5 étant le nombre de test unitaire en échec…

3 fichiers de logs sont créés
pour une consultation rapide :

  • log_maven.log
  • log_maven-FAIL.log
  • log_maven-WARM.log

#2

@koj, @mfaure j’imagine qu’une configuration de mon IDE me permet de lancer la compilation directement dans son interface et d’accéder facilement à ce type d’information ?


#3

avec intellij, tu peux directement executer les tests, et donc avoir le detail des tests en erreur, avec eventuellement la stack trace