Skip to content
Snippets Groups Projects
Name Last commit Last update
..
src
.gitignore
.gitlab-ci.yml
README.md
pom.xml

Objectif

Ce TP est destiné à vérifier le fonctionnement de la chaîne automatique de compilation et d'exécution d'un programme Java :

  • compilation (javac)
  • tests unitaires (junit)
  • test de couverture (jacoco)

La mise en oeuvre est effectuée par l'outil de construction de projet Maven.

Préambule

Vérifier que le programme Maven est installé :

$ mvn -version
Maven home: /usr/local/Cellar/maven/3.8.7/libexec
Java version: 19.0.1, vendor: Homebrew, runtime: /usr/local/Cellar/openjdk/19.0.1/libexec/openjdk.jdk/Contents/Home
Default locale: fr_FR, platform encoding: UTF-8
OS name: "mac os x", version: "12.6.2", arch: "x86_64", family: "mac"

Si vous utilisez l'IDE VS Code vous pouvez installer les extensions suivantes :

Création de votre branche de travail

Clonez le projet sur votre ordinateur : git clone https://gitlab.univ-lorraine.fr/pierron9/sphere

Créez une branche pour travailler. Choisissez comme nom de branche votre nom de login sur https://gitlab.univ-lorraine.fr/

cd sphere
git branch <your branch name>
git switch <your branch name>

Testez que vous êtes au bon endroit : git status

Créez la branche sur le dépôt distant : git push --set-upstream origin <your branch name>

Vous devriez avoir cela dans le répertoire sphere :

sphere
├── README.md
├── pom.xml
└── src
    ├── main
    │   └── java
    │       └── fr
    │           └── nancy
    │               └── iut
    │                   └── Sphere.java
    └── test
        └── java
            └── fr
                └── nancy
                    └── iut
                        └── SphereTest.java

Passage des tests

Passez le test, avec la commande mvn test ou de puis votre IDE.

Corrigez le programme pour que le test passe.

Enregistrez votre travail et synchronisez le sur le dépôt.

Couverture de code

Vérifiez la couverture de code : mvn jacoco:prepare-agent install jacoco:report

Puis visualisez le résultat : open target/site/jacoco/index.html

Vous pouvez aussi voir le résultat dans l'IDE grâce à Covergae Gutters, les marques vertes indiquent des lignes analysées, les marques rouges, les lignes non testées.

Travail supplémentaire

Ajoutez des tests pour arriver à 100% de couverture de code. Vous pouvez avoir besoin de la documentation de JUnit : https://junit.org/junit5/docs/5.7.2/user-guide/index.html

La bonne méthode est d'ajouter un test à la fois, de le faire passer puis committer pour valider le travail.

Une fois la couverture à 100% obtenue, synchronisez votre travail avec le dépôt.