Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
73 changes: 71 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Allure Javascript Integrations

> This project aggregates Allure Javascript commons and reporters.
> Official Allure Framework integrations for JavaScript test runners and API tools.

[<img src="https://allurereport.org/public/img/allure-report.svg" height="85px" alt="Allure Report logo" align="right" />](https://allurereport.org "Allure Report")

Expand All @@ -12,6 +12,75 @@

---

## Overview

This repository contains the shared `allure-js-commons` module together with ready-to-use integrations for the most popular JavaScript testing tools. Each package writes `allure-results` files that can be rendered by Allure Report.

Allure adds a consistent reporting layer on top of your test runs:

- rich steps with nested structure
- attachments such as screenshots, logs, traces, and API payloads
- metadata including owners, severity, tags, links, epics, stories, and test case IDs
- history-aware results, retries, flaky analysis, categories, and environment details
- a shared runtime API from `allure-js-commons` so teams can keep the same reporting model across frameworks

## Basic installation

Install the integration package for your test framework:

```bash
npm install -D allure-playwright
```

Run your tests so the integration can produce `./allure-results`.

To view the report, choose one of the supported report generators:

- Allure Report 2 CLI: install it by following the [official installation guide](https://allurereport.org/docs/install/), then run `allure generate` and `allure open`
- Allure Report 3: install the official npm package with `npm install -D allure`, then run `npx allure generate` and `npx allure open`

## Supported versions and platforms

The packages in this repository are Node.js integrations and are intended to run anywhere the underlying framework supports Node.js, including Linux, macOS, and Windows.

This repository is currently validated in CI on:

- Node.js 20 and 22
- Ubuntu and Windows runners

Minimum supported framework versions by package:

- `allure-codeceptjs`: `codeceptjs >= 2.3.6`
- `allure-cucumberjs`: `@cucumber/cucumber >= 10.8.0`
- `allure-cypress`: `cypress >= 12.17.4`
- `allure-jasmine`: `jasmine >= 2.7.0`
- `allure-jest`: `jest`, `jest-circus`, and matching Jest environments `>= 24.8.0`
- `allure-mocha`: `mocha >= 6.2.0`
- `allure-playwright`: `@playwright/test >= 1.53.0`
- `allure-vitest`: `vitest >= 1.3.0`
- `newman-reporter-allure`: `newman >= 3.5.0`
- `allure-js-commons`: shared runtime and reporter SDK used to build integrations

## Generate a report

### Allure Report 2

After your tests generate `./allure-results`, create the HTML report with the classic CLI:

```bash
allure generate ./allure-results -o ./allure-report
allure open ./allure-report
```

### Allure Report 3

If you install the official `allure` npm package, you can generate and open the report with:

```bash
npx allure generate ./allure-results
npx allure open ./allure-report
```

## Supported frameworks

### CucumberJS
Expand Down Expand Up @@ -73,7 +142,7 @@

### allure-js-commons

Interface for Allure 2 to be used from Javascript and TypeScript.
Runtime API and reporter SDK for JavaScript and TypeScript integrations.

![npm](https://img.shields.io/npm/dm/allure-js-commons.svg) ![npm](https://img.shields.io/npm/v/allure-js-commons.svg)

Expand Down
27 changes: 22 additions & 5 deletions packages/allure-codeceptjs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,12 @@ The docs for Allure CodeceptJS are available at [https://allurereport.org/docs/c

Also, check out the examples at [github.com/allure-examples](https://github.com/orgs/allure-examples/repositories?q=visibility%3Apublic+archived%3Afalse+topic%3Aexample+topic%3Acodeceptjs).

## Features

- writes standard `allure-results` files directly from CodeceptJS runs
- supports Allure labels, links, parameters, steps, and attachments through `allure-js-commons`
- works with Allure Report 2 and Allure Report 3

## Installation

Install `allure-codeceptjs` using a package manager of your choice. For example:
Expand All @@ -26,6 +32,17 @@ Install `allure-codeceptjs` using a package manager of your choice. For example:
npm install -D allure-codeceptjs
```

Install Allure Report separately when you want to render the generated `allure-results`:

- follow the [Allure Report 2 installation guide](https://allurereport.org/docs/install/) to use the `allure` CLI
- or install Allure Report 3 with `npm install -D allure` to use `npx allure`

## Supported versions and platforms

- `codeceptjs >= 2.3.6`
- Linux, macOS, and Windows wherever CodeceptJS supports Node.js
- this repository is validated in CI on Node.js 20 and 22

## Usage

Enable the `allure` plugin in [the CodeceptJS configuration file](https://codecept.io/configuration/):
Expand All @@ -51,18 +68,18 @@ You may select another location, or further customize the plugin's behavior with

### View the report

> You need Allure Report to be installed on your machine to generate and open the report from the result files. See the [installation instructions](https://allurereport.org/docs/install/) on how to get it.

Generate Allure Report after the tests are executed:
Use Allure Report 2:

```bash
allure generate ./allure-results -o ./allure-report
allure open ./allure-report
```

Open the generated report:
Or use Allure Report 3:

```bash
allure open ./allure-report
npx allure generate ./allure-results
npx allure open ./allure-report
```

## Allure API
Expand Down
30 changes: 24 additions & 6 deletions packages/allure-cucumberjs/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# allure-cucumberjs

> Allure integration for `cucumber-js` compatible with `@cucumber/cucumber@^8.x.x` and Allure 2+.
> Allure integration for `cucumber-js` with the shared Allure JavaScript runtime and reporter SDK.

[<img src="https://allurereport.org/public/img/allure-report.svg" height="85px" alt="Allure Report logo" align="right" />](https://allurereport.org "Allure Report")

Expand All @@ -19,6 +19,12 @@ The docs for Allure Cucumber.js are available at

Also, check out the examples at [github.com/allure-examples](https://github.com/orgs/allure-examples/repositories?q=visibility%3Apublic+archived%3Afalse+topic%3Aexample+topic%3Acucumberjs).

## Features

- writes Allure results from Cucumber.js formatter output
- supports labels, links, parameters, steps, and attachments through `allure-js-commons`
- works with Allure Report 2 and Allure Report 3

## Installation

Install `allure-cucumberjs` using a package manager of your choice. For example:
Expand All @@ -29,6 +35,18 @@ npm install -D allure-cucumberjs

> If you're a Yarn PnP user, please read [this](https://allurereport.org/docs/cucumberjs-configuration/#a-note-for-yarn-pnp-users).

Install Allure Report separately when you want to render the generated `allure-results`:

- follow the [Allure Report 2 installation guide](https://allurereport.org/docs/install/) to use the `allure` CLI
- or install Allure Report 3 with `npm install -D allure` to use `npx allure`

## Supported versions and platforms

- `@cucumber/cucumber >= 10.8.0`
- `@cucumber/messages >= 24.1.0`
- Linux, macOS, and Windows wherever Cucumber.js supports Node.js
- this repository is validated in CI on Node.js 20 and 22

## Usage

Enable the `allure-cucumberjs/reporter` formatter in [the Cucumber.js configuration file](https://github.com/cucumber/cucumber-js/blob/main/docs/configuration.md):
Expand All @@ -54,18 +72,18 @@ You may select another location, or further customize the formatter's behavior w

### View the report

> You need Allure Report to be installed on your machine to generate and open the report from the result files. See the [installation instructions](https://allurereport.org/docs/install/) on how to get it.

Generate Allure Report after the tests are executed:
Use Allure Report 2:

```bash
allure generate ./allure-results -o ./allure-report
allure open ./allure-report
```

Open the generated report:
Or use Allure Report 3:

```bash
allure open ./allure-report
npx allure generate ./allure-results
npx allure open ./allure-report
```

## Allure API
Expand Down
27 changes: 22 additions & 5 deletions packages/allure-cypress/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,12 @@

The docs for Allure Cypress are available at [https://allurereport.org/docs/cypress/](https://allurereport.org/docs/cypress/).

## Features

- writes Allure results from Cypress runs
- supports steps, attachments, labels, links, parameters, and metadata through `allure-js-commons`
- works with Allure Report 2 and Allure Report 3

## Installation

Install `allure-cypress` using a package manager of your choice. For example:
Expand All @@ -24,6 +30,17 @@ Install `allure-cypress` using a package manager of your choice. For example:
npm install -D allure-cypress
```

Install Allure Report separately when you want to render the generated `allure-results`:

- follow the [Allure Report 2 installation guide](https://allurereport.org/docs/install/) to use the `allure` CLI
- or install Allure Report 3 with `npm install -D allure` to use `npx allure`

## Supported versions and platforms

- `cypress >= 12.17.4`
- Linux, macOS, and Windows wherever Cypress supports Node.js
- this repository is validated in CI on Node.js 20 and 22

## Usage

Call `allureCypress` to initialize the plugin from the `setupNodeEvents` function in `cypress.config.js`:
Expand Down Expand Up @@ -56,18 +73,18 @@ You may select another location, or further customize the plugin's behavior with

### View the report

> You need Allure Report to be installed on your machine to generate and open the report from the result files. See the [installation instructions](https://allurereport.org/docs/install/) on how to get it.

Generate Allure Report:
Use Allure Report 2:

```bash
allure generate ./allure-results -o ./allure-report
allure open ./allure-report
```

Open Allure Report:
Or use Allure Report 3:

```bash
allure open ./allure-report
npx allure generate ./allure-results
npx allure open ./allure-report
```

## Allure API
Expand Down
27 changes: 22 additions & 5 deletions packages/allure-jasmine/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,12 @@

The docs for Allure Jasmine are available at [https://allurereport.org/docs/jasmine/](https://allurereport.org/docs/jasmine/).

## Features

- writes Allure results from Jasmine reporter events
- supports runtime metadata, nested steps, parameters, and attachments through `allure-js-commons`
- works with Allure Report 2 and Allure Report 3

## Installation

Install `allure-jasmine` using a package manager of your choice. For example:
Expand All @@ -24,6 +30,17 @@ Install `allure-jasmine` using a package manager of your choice. For example:
npm install -D allure-jasmine
```

Install Allure Report separately when you want to render the generated `allure-results`:

- follow the [Allure Report 2 installation guide](https://allurereport.org/docs/install/) to use the `allure` CLI
- or install Allure Report 3 with `npm install -D allure` to use `npx allure`

## Supported versions and platforms

- `jasmine >= 2.7.0`
- Linux, macOS, and Windows wherever Jasmine supports Node.js
- this repository is validated in CI on Node.js 20 and 22

## Usage

Create a helper file (e.g., `helpers/setup.js` or `helpers/setup.ts`) and set up the Allure reporter in it:
Expand All @@ -44,18 +61,18 @@ You may select another location, or further customize the reporter's behavior wi

### View the report

> You need Allure Report to be installed on your machine to generate and open the report from the result files. See the [installation instructions](https://allurereport.org/docs/install/) on how to get it.

Generate Allure Report after the tests are executed:
Use Allure Report 2:

```bash
allure generate ./allure-results -o ./allure-report
allure open ./allure-report
```

Open the generated report:
Or use Allure Report 3:

```bash
allure open ./allure-report
npx allure generate ./allure-results
npx allure open ./allure-report
```

## Allure API
Expand Down
29 changes: 24 additions & 5 deletions packages/allure-jest/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,12 @@ The docs for Allure Jest are available at [https://allurereport.org/docs/jest/](

Also, check out the examples at [github.com/allure-examples](https://github.com/orgs/allure-examples/repositories?q=visibility%3Apublic+archived%3Afalse+topic%3Aexample+topic%3Ajest).

## Features

- writes Allure results from the Jest Circus runtime
- supports labels, links, parameters, nested steps, and attachments through `allure-js-commons`
- works with Allure Report 2 and Allure Report 3

## Installation

Install `allure-jest` using a package manager of your choice. For example:
Expand All @@ -36,6 +42,19 @@ npm install -D allure-jest
> ```
> Keep in mind, that `allure-js-commons` and `allure-jest` must have the same version. The same goes for all Jest packages (`jest`, `jest-circus`, `jest-environment-node`, etc). Use [`yarn info`](https://yarnpkg.com/cli/info) to check the versions.

Install Allure Report separately when you want to render the generated `allure-results`:

- follow the [Allure Report 2 installation guide](https://allurereport.org/docs/install/) to use the `allure` CLI
- or install Allure Report 3 with `npm install -D allure` to use `npx allure`

## Supported versions and platforms

- `jest >= 24.8.0`
- `jest-circus >= 24.8.0`
- matching Jest CLI and environment packages `>= 24.8.0`
- Linux, macOS, and Windows wherever Jest supports Node.js
- this repository is validated in CI on Node.js 20 and 22

## Usage

Set the [`testEnvironment`](https://jestjs.io/docs/configuration#testenvironment-string) Jest option according to your needs:
Expand All @@ -59,18 +78,18 @@ You may select another location, or further customize the behavior of Allure Jes

### View the report

> You need Allure Report to be installed on your machine to generate and open the report from the result files. See the [installation instructions](https://allurereport.org/docs/install/) on how to get it.

Generate Allure Report after the tests are executed:
Use Allure Report 2:

```bash
allure generate ./allure-results -o ./allure-report
allure open ./allure-report
```

Open the generated report:
Or use Allure Report 3:

```bash
allure open ./allure-report
npx allure generate ./allure-results
npx allure open ./allure-report
```

## Allure API
Expand Down
Loading
Loading