Skip to content

allure-framework/allure-java

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

863 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Allure Java

Allure Java is the JVM integration family for Allure Report. It helps Java, Groovy, Scala, Kotlin, and other JVM test suites write Allure result files that can be viewed in Allure Report.

Requirements

  • Allure Java 3.x targets Java 17 and newer.
  • Use one framework adapter per test runtime, for example allure-jupiter, allure-testng, or allure-cucumber7-jvm.
  • Prefer allure-bom to keep Allure module versions aligned.

Quick Start

Gradle:

dependencies {
    testImplementation(platform("io.qameta.allure:allure-bom:<allure-version>"))
    testImplementation("io.qameta.allure:allure-jupiter")
}

tasks.test {
    useJUnitPlatform()
}

Maven:

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>io.qameta.allure</groupId>
            <artifactId>allure-bom</artifactId>
            <version>${allure.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

<dependencies>
    <dependency>
        <groupId>io.qameta.allure</groupId>
        <artifactId>allure-jupiter</artifactId>
        <scope>test</scope>
    </dependency>
</dependencies>

Run your tests, then generate or serve the report from the produced Allure results directory, usually build/allure-results for Gradle or target/allure-results for Maven.

Module Catalog

Test Frameworks

Module Use When Registration
allure-jupiter JUnit Jupiter on JUnit 5 or 6 JUnit Platform service loader
allure-junit-platform Building a custom JUnit Platform integration JUnit Platform listener and filter services
allure-junit4 JUnit 4 runner where listeners can be configured Register io.qameta.allure.junit4.AllureJunit4
allure-junit4-aspect Gradle built-in JUnit 4 execution Enable AspectJ weaver
allure-testng TestNG 7 suites TestNG service loader or listener registration
allure-spock2 Spock 2 specifications Spock global extension service
allure-scalatest ScalaTest suites ScalaTest reporter
allure-cucumber7-jvm Cucumber JVM 7 Cucumber plugin
allure-jbehave5 JBehave 5 stories JBehave story reporter
allure-karate Karate runtime listeners Karate runtime listener
allure-citrus Citrus tests Citrus listeners

HTTP, Browser, And Client Integrations

Module Use When Captured Data
allure-rest-assured REST Assured filters HTTP requests and responses
allure-httpclient5 Apache HttpClient 5 interceptors HTTP requests and responses
allure-httpclient Apache HttpClient 4 interceptors HTTP requests and responses
allure-okhttp3 OkHttp interceptors HTTP requests and responses
allure-spring-web Spring RestTemplate interceptors HTTP requests and responses
allure-jax-rs Jakarta RESTful Web Services / JAX-RS client filters HTTP requests and responses
allure-servlet-api Jakarta Servlet request/response conversion Servlet request and response data
allure-grpc gRPC client interceptors gRPC calls and metadata
allure-selenide Selenide UI tests UI steps, screenshots, page source, logs
allure-selenium-bidi Selenium WebDriver BiDi sessions Browser logs and network attachments
allure-playwright Playwright Java actions AspectJ action steps and screenshots
allure-jooq jOOQ execution listener SQL execution steps

Assertions And Utilities

Module Use When Notes
allure-assertj AssertJ assertions should appear as Allure steps Requires AspectJ
allure-hamcrest Hamcrest assertions should appear as Allure steps Requires AspectJ
allure-jupiter-assert JUnit Jupiter assertions should appear as Allure steps Requires AspectJ
allure-awaitility Awaitility polling should appear as Allure steps Register condition listener
allure-jsonunit JsonUnit diffs should be attached to Allure Provides JSON matcher/listener helpers

Core And Support Modules

Module Purpose
allure-bom Maven/Gradle dependency alignment
allure-java-commons Runtime API, lifecycle, annotations, aspects, and test-plan filtering
allure-model Serializable Allure result model
allure-descriptions-javadoc Annotation processor for JavaDoc-based test descriptions

Common Runtime APIs

Most adapters depend on allure-java-commons, which provides the high-level API:

import io.qameta.allure.Allure;

Allure.step("Create order", () -> {
    Allure.attachment("request-id", "42");
});

For HTTP clients, browser tools, assertion libraries, and other integrations, add the matching module from the catalog above. Each module README shows the registration snippet for that tool.

Resources

Packages

 
 
 

Contributors

Languages