Skip to content
Allure report logoAllure Report
Main Navigation ModulesDocumentationStarter Project

English

Español

English

Español

Appearance

Sidebar Navigation

Allure 3

Install & Upgrade

Install Allure

Upgrade Allure

Configure

Create Reports

How to generate a report

How to view a report

Improving readability of your test reports

Improving navigation in your test report

Reading Allure charts

Migrate from Allure 2

Allure 2

Install & Upgrade

Install for Windows

Install for macOS

Install for Linux

Install for Node.js

Upgrade Allure

Create Reports

How to generate a report

How to view a report

Improving readability of your test reports

Improving navigation in your test report

Features

Agent Mode

Test steps

Attachments

Test statuses

Assertion diffs

Sorting and filtering

Environments

Multistage Builds

Categories

Visual analytics

Test stability analysis

History and retries

Quality Gate

Global Errors and Attachments

Timeline

Export to CSV

Export metrics

Guides

JUnit 5 parametrization

JUnit 5 & Selenide: screenshots and attachments

JUnit 5 & Selenium: screenshots and attachments

Setting up JUnit 5 with GitHub Actions

Pytest parameterization

Pytest & Selenium: screenshots and attachments

Pytest & Playwright: screenshots and attachments

Pytest & Playwright: videos

Playwright parameterization

Publishing Reports to GitHub Pages

Allure Report 3: XCResults Reader

How it works

Overview

Glossary

Test result file

Container file

Categories file

Environment file

Executor file

History files

Test Identifiers

Integrations

Azure DevOps

Bamboo

GitHub Action

Gradle

Jenkins

JetBrains IDEs

Maven

TeamCity

Visual Studio Code

Frameworks

AVA

Getting started

Configuration

Reference

Axios

Getting started

Configuration

Reference

Behat

Getting started

Configuration

Reference

Behave

Getting started

Configuration

Reference

Bun

Getting started

Configuration

Reference

Chai

Getting started

Reference

Codeception

Getting started

Configuration

Reference

CodeceptJS

Getting started

Configuration

Reference

Cucumber.js

Getting started

Configuration

Reference

Cucumber-JVM

Getting started

Configuration

Reference

Cucumber.rb

Getting started

Configuration

Reference

Cypress

Getting started

Configuration

Reference

Fetch

Getting started

Configuration

Reference

Go

Getting started

Configuration

Reference

Jasmine

Getting started

Configuration

Reference

JBehave

Getting started

Configuration

Reference

Jest

Getting started

Configuration

Reference

JUnit 4

Getting started

Configuration

Reference

JUnit 5

Getting started

Configuration

Reference

Mocha

Getting started

Configuration

Reference

Newman

Getting started

Configuration

Reference

Node.js Test Runner

Getting started

Configuration

Reference

NUnit

Getting started

Configuration

Reference

PHPUnit

Getting started

Configuration

Reference

Playwright

Getting started

Configuration

Reference

pytest

Getting started

Configuration

Reference

Pytest-BDD

Getting started

Configuration

Reference

Reqnroll

Getting started

Configuration

Reference

REST Assured

Getting started

Configuration

Robot Framework

Getting started

Configuration

Reference

Rust Cargo Test

Getting started

Configuration

Reference

RSpec

Getting started

Configuration

Reference

SpecFlow

Getting started

Configuration

Reference

Spock

Getting started

Configuration

Reference

TestNG

Getting started

Configuration

Reference

Vitest

Getting started

Configuration

Reference

WebdriverIO

Getting started

Configuration

Reference

xUnit.net

Getting started

Configuration

Reference

On this page

Allure GitHub Action Allure 3 ​

Allure Report 3 comes with support for the Allure GitHub Action.

With this action you can automatically post test run summaries as pull request comments in your GitHub repository. The summaries contain:

  • A visual summary table of the run and generated reports
  • Test run duration
  • Amount of new, flaky and retried tests in the run
  • Full report link, if remote-href is configured or the report was published to Allure Service

Additionally, if your allure configuration includes quality gate settings, you get a pass/fail Quality Gate GitHub Check on your pull requests.

Prerequisites ​

Allure Report Generation Workflow ​

To work properly, this GitHub Action requires that your workflow use Allure 3 and relevant Allure integrations depending on your framework to generate an HTML Allure Report.

HTML reports produce the {report-directory}/summary.json file which the action reads, turns into a readable summary table, and posts as a pull request comment.

TIP

The action will not fully work if you're generating CSV reports, as the CSV plugin doesn't create a summary.json file. It may also not work with third party HTML report plugins, if they don't create a summary.json.

GitHub Permissions ​

Add pull-requests and checks permissions to your workflow to enable comments and checks for pull requests in your repository:

yaml
permissions:
  pull-requests: write
  checks: write

Configuration ​

Add the action to your workflow right after the step at which you produce the Allure Report:

yaml
- name: Run tests
  run |-
    # run your tests that generate Allure Report data

- name: Run Allure Action
  uses: allure-framework/allure-action@v0
  with:
    # Path to the generated report directory
    # By default, it's set to `./allure-report`
    report-directory: "./allure-report"
    # GitHub Token that's used for posting the comments in Pull Requests
    github-token: ${{ secrets.GITHUB_TOKEN }}

Minimal Working Example ​

yaml
name: Tests with Allure Report

on:
  pull_request:
    branches: [main]

permissions:
  pull-requests: write
  checks: write

jobs:
  test:
    runs-on: ubuntu-latest

    steps:
      # 1. Checkout code
      - name: Checkout
        uses: actions/checkout@v4

      # 2. Setup your language/runtime
      - name: Setup Node.js
        uses: actions/setup-node@v4
        with:
          node-version: "20"

      # 3. Install dependencies
      - name: Install dependencies
        run: npm ci

      # 4. Run tests (must use Allure reporter)
      - name: Run tests and generate report
        run: npx allure run -- npm run test
        # This generates allure-results/ directory and creates allure-report/ with summary.json

      # 5. Post summary to PR
      - name: Run Allure Action
        uses: allure-framework/allure-action@v0
        with:
          report-directory: "./allure-report"
          github-token: ${{ secrets.GITHUB_TOKEN }}

Report URL (remote-href) ​

To add a View link to the summary table and turn new/flaky/retry counts into clickable filter links, provide the base URL where your report is hosted:

yaml
- name: Run Allure Action
  uses: allure-framework/allure-action@v0
  with:
    report-directory: "./allure-report"
    github-token: ${{ secrets.GITHUB_TOKEN }}
    remote-href: "https://my-org.github.io/my-repo/"

This is useful when publishing reports to GitHub Pages or any other static hosting. If the report was published to Allure Service, the URL is embedded in the report automatically and remote-href is not needed.

Section Comments (sections) ​

By default, the action posts only the summary table. To also post collapsible comments that list individual tests, use the sections input:

yaml
- name: Run Allure Action
  uses: allure-framework/allure-action@v0
  with:
    report-directory: "./allure-report"
    github-token: ${{ secrets.GITHUB_TOKEN }}
    sections: |
      new
      flaky

Supported values: new, flaky, retry, all. The input accepts comma- or newline-separated values.

Each section is posted as a separate collapsible comment listing tests with their status, name, and duration. If remote-href is configured, each test name links directly to its result in the report. Oversized lists are truncated and a More link to the filtered remote report is appended when available. Section comments from previous runs are automatically cleaned up when sections are removed.

Outputs ​

Summary Table Comment ​

The action posts a comment like this:

If you have multiple reports set up (for example one general report and one dashboard report), you'll get a separate table row for each report. The action scans report-directory recursively for all summary.json files.

Section Comments ​

If the sections input is configured, the action posts additional collapsible comments — one per enabled section — listing individual tests. See Section Comments above for details.

Section comments are always posted collapsed, so they won't clutter your pull requests.

Quality Gate Check ​

If quality gates are configured in your Allure setup, the action creates a GitHub Check:

  • ✅ Success - All quality gates passed
  • ❌ Failure - One or more quality gates failed

The check includes details about which rules failed.

To determine the outcome, the action looks for quality gate data in the {report-directory}/quality-gate.json file.

Pager
Previous pageBamboo
Next pageGradle
Powered by

Subscribe to our newsletter

Get product news you actually need, no spam.

Subscribe
Allure TestOps
  • Overview
  • Why choose us
  • Cloud
  • Self-hosted
  • Success Stories
Company
  • Documentation
  • Blog
  • About us
  • Contact
  • Events
© 2026 Qameta Software Inc. All rights reserved.
A Markdown version of this page is available at /docs/integrations-github-action.md