0

I am using junit5 and 4 and allure is integrated through the allure-gradle plugin. The reports are being generated successfully when i run the task

./gradlew allureServe

the problem is that the history trend tile is empty in the report that is shown in the browser.According to Allure reports to see historic trends if i copy the history folder from the allure-reports folder in the allure-results it is working perfectly and the trends are shown.

Is there a way to automate this copy-paste process through gradle build script, by editing the allureServe task to copy paste the history folder from allure-reports or change the allureReport task such that the history folder is created in the allure-results or any other way so that the history folder in automatically generated into the allure-results projects and when these changes are committed to gitlab the setting are automatically configured also for the other people working on the project after doing git pull.

i am using the latest version of allure plugin and allure version 2.21.0.

plugins {
    id 'java-library'
    id 'eclipse'
    id 'maven-publish'
    id "nu.studer.credentials" version "3.0"
    id 'io.freefair.lombok' version "6.1.0"
    id"io.qameta.allure" version "latest.release"
}

configurations.all {
    resolutionStrategy.cacheChangingModulesFor 0, 'seconds'
    resolutionStrategy.cacheDynamicVersionsFor 0, 'seconds'
}

allure{
    autoconfigure = true
    version = '2.21.0'  
}
dependencies {

    implementation 'net.abit.htmltests:framework:3.+'
    implementation 'net.abit.htmltests:utils:2.9.3-SNAPSHOT'
    
    //temporaray Solution - will be outsourced to frameworks - Pageobjects 
    implementation 'net.abit.htmltests:pageobjects:release-4.65-SNAPSHOT!!'

    // https://mvnrepository.com/artifact/org.apache.commons/commons-lang3
    implementation group: 'org.apache.commons', name: 'commons-lang3', version: '3.12.0'
    implementation group: 'org.apache.pdfbox', name: 'pdfbox', version: '2.0.28'
    implementation 'org.apache.ant:ant:1.10.5'
    implementation 'com.pojosontheweb:monte-repack:1.0.1'
    implementation 'commons-io:commons-io:2.6'
    implementation 'net.java.dev.jna:jna-platform:4.5.0'
    
    // more dependencies, e.g. for JUnit...
    implementation 'org.hamcrest:hamcrest:2.2'
    
    runtimeOnly 'com.collenda.jdbc:db2jcc:1.4.2'
    
    
}


configurations {
   all*.exclude group: 'xml-apis'
}

I have tried the changing the allure settings through the allure.properties file by adding:

allure.history.directory = ./build/allure-results

but this dosen't seem to work for allure version 2.21.0. I have also tried changing the directory where reports are created by:

$ ./gradlew allureReport --report-dir C:/Workspaces/project_name/build/allure-results

but after every new build the settings are automatically reset.

1 Answers1

0

Have you tried creating a gradle task to copy history before the new report is generated?

tasks.register('copyAllureHistory', Copy) {
    description 'Copies existing allure history to include to be included in the new report'
    from ("build/reports/allure-report/allureReport/history") {
        include '**/*.json'
    }
    into "build/allure-results/history"
}

allureReport.dependsOn(copyAllureHistory)