[Rapide] Maven: Mise en place de JUnit 5

Par défaut,  c’est le plugin Surefire qui est utilisé pour les tests unitaires de Maven et il supporte uniquement JUnit 3 et  4, mais pas JUnit 5. Pour tester, vous pouvez créer un test avec JUnit 5, avec sa dépendance (junit-jupiter-api) et lancer la commande test de Maven, votre test ne sera pas pris en compte.

Afin de changer ceci, il faut injecter une dépendance dans le plugin Surefire (junit-platform-surefire-provider), qui permet de personnaliser le TestEngine. Ensuite, il faut définir l’implémentation de cette interface, en injectant la dépendance junit-jupiter-engine

tl;dr

Tu trouveras un exemple sur ce repository ou tu rajoutes ceci dans ton pom.xml:

<properties>
    <junit.version>5.0.3</junit.version>
</properties>

<dependencies>
    <dependency>
        <groupId>org.junit.jupiter</groupId>
        <artifactId>junit-jupiter-api</artifactId>
        <version>${junit.version}</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.junit.jupiter</groupId>
        <artifactId>junit-jupiter-engine</artifactId>
        <version>${junit.version}</version>
        <scope>test</scope>
    </dependency>
</dependencies>

<build>
    <plugins>
        <plugin>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.19</version>
            <dependencies>
                <dependency>
                    <groupId>org.junit.platform</groupId>
                    <artifactId>junit-platform-surefire-provider</artifactId>
                    <version>1.0.0</version>
                </dependency>
            </dependencies>
        </plugin>
    </plugins>
</build>

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *