2 votes

Configuration pour Gradle 4.7 afin de générer le rapport HTML pour les tests JUnit 5

J'ai une application basée comme suit :

  • Spring Framework 5.0.4.RELEASE
  • Gradle 4.7 - projet multimodule configuré par
  • JUnit 5.1.1

La configuration de Gradle avec JUnit se trouve dans la section build.gradle situé dans le module Root :

...
subprojects {

    apply plugin: 'java'
    apply plugin: 'eclipse'
    apply plugin: 'org.junit.platform.gradle.plugin'

    sourceCompatibility = '1.8'
    targetCompatibility = '1.8'

    repositories {
        jcenter()
    }

    ext {
      ...
      junitVersion = '5.1.1'
      ...
    }

    dependencies {

       ...

       //Testing
       ...
       testImplementation "org.junit.jupiter:junit-jupiter-api:$junitVersion"
       testCompile "org.junit.jupiter:junit-jupiter-params:$junitVersion";
       testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:$junitVersion"
       ....

    }

    test {
        useJUnitPlatform()      
    }

}

//This location is mandatory
buildscript {

    repositories {
        mavenCentral()
    }

    dependencies {      
        classpath "org.junit.platform:junit-platform-gradle-plugin:1.1.0"
    }

}

Par le biais de Jenkins J'exécute :

  • gradle :thymeleaf-02-infrastructure:test --parallel
  • et avec Publish JUnit test result report est configuré pour thymeleaf-02-infrastructure/build/test-results/junit-platform/*.xml

A partir de ce qui précède, tout fonctionne bien, je peux voir dans Jenkins le site @Test passé mais Gradle ne génère pas le report avec le répertoire attendu html fichier.

Même si directement le gradle :thymeleaf-02-infrastructure:test --parallel est exécutée dans le terminal, tout fonctionne (tests passe), mais Gradle ne génère pas le report avec le répertoire attendu html fichier.

J'ai déjà lu ces liens :

Et bien j'utilise

test {
    useJUnitPlatform()      
}

et Gradle es >4.6 , 4.7 Alors, que manque-t-il ?

4voto

Marc Philipp Points 1348

Vous devez retirer le org.junit.platform.gradle.plugin parce qu'il désactive le standard test par défaut.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X