# jest-allure

> Allure Reports for jest

Latest version **0.1.3** (published 2020-05-22) · MIT license · 0 weekly downloads

## Install

```sh
npm install jest-allure
pnpm add jest-allure
yarn add jest-allure
bun add jest-allure
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.1.3 |
| Published | 2020-05-22 |
| First published | 2018-05-28 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 6 |
| Unpacked size | 22.3 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 117 |
| Author | Denis Artyuhovich |
| Maintainers | denisby |
| Keywords | jest, report, reports, allure, e2e, tests, screenshots |

## Links

- npm: https://www.npmjs.com/package/jest-allure
- Repository: git@github.com:zaqqaz/jest-allure
- npm.io page: https://npm.io/package/jest-allure

## Dependencies (6)

- [strip-ansi](https://npm.io/package/strip-ansi.md) ^4.0.0
- [@types/jest](https://npm.io/package/@types/jest.md) ^22.2.3
- [@types/node](https://npm.io/package/@types/node.md) ^10.1.2
- [@types/strip-ansi](https://npm.io/package/@types/strip-ansi.md) ^3.0.0
- [allure-js-commons](https://npm.io/package/allure-js-commons.md) ^1.3.2
- [@types/allure-js-commons](https://npm.io/package/@types/allure-js-commons.md) ^0.0.0

## Alternatives

- [duck](https://npm.io/package/duck.md) — 4.2M weekly downloads
- [ava](https://npm.io/package/ava.md) — 560.2K weekly downloads
- [storybook-addon-module-mock](https://npm.io/package/storybook-addon-module-mock.md) — 71.7K weekly downloads
- [vest](https://npm.io/package/vest.md) — 50.1K weekly downloads
- [@ethereum-waffle/mock-contract](https://npm.io/package/@ethereum-waffle/mock-contract.md) — 40.0K weekly downloads

## Recent versions

- 0.1.3 (latest) — 2020-05-22
- 0.1.2 — 2020-05-20
- 0.1.1 — 2018-06-13
- 0.1.0 — 2018-06-12
- 0.0.4 — 2018-06-12
- 0.0.3 — 2018-06-12
- 0.0.2 — 2018-05-28
- 0.0.1 — 2018-05-28

## README

# Jest-Allure reporting plugin

#### Add more power to your tests using Jest-Allure. Easily generate nice reports at the end of the execution.
[![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/jest-community/awesome-jest)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com)

[![GitHub followers](https://img.shields.io/github/followers/zaqqaz.svg?style=social)](https://github.com/zaqqaz)
[![GitHub stars](https://img.shields.io/github/stars/zaqqaz/jest-allure.svg?style=social)](https://github.com/zaqqaz/jest-allure/stargazers)
[![GitHub watchers](https://img.shields.io/github/watchers/zaqqaz/jest-allure.svg?style=social)](https://github.com/zaqqaz/jest-allure/watchers)
#### Examples
- [Report example](https://103-170502579-gh.circle-artifacts.com/0/Report/Allure/index.html)
- [Visual unit tests with allure report. Demo project](https://github.com/zaqqaz/visual-unit-tests)
- [Simple integration test](https://github.com/zaqqaz/jest-allure/blob/master/examples/__tests__/test1.js)

<hr>

![Allure Report](https://user-images.githubusercontent.com/2823336/40350093-59cad576-5db1-11e8-8210-c4db3bf825a1.png)

[Allure Framework](https://github.com/allure-framework/allure2) is a flexible lightweight multi-language test report tool that not only
shows a very concise representation of what have been tested in a neat web report form,
but allows everyone participating in the development process to extract maximum of useful
information from everyday execution of tests.

#### Installation

```
yarn add -D jest-allure
```
or

```
npm install --save-dev jest-allure
```

### jest -v >24 ?
Then add `jest-allure/dist/setup` to `setupFilesAfterEnv` section of your config.

```
setupFilesAfterEnv: ["jest-allure/dist/setup"]
```

### jest -v < 24 ?

#### add reporter to jest.config.js
```
reporters: ["default", "jest-allure"],
```

Run your tests and enjoy 🥤🚀

---

#### How to get a report

You need to install the [CLI](https://github.com/allure-framework/allure2#download) in order to obtain a report.

To see a report in browser, run in console

```
allure serve
```

If you want to generate html version, run in console

```
allure generate
```

# Advanced features
You can add description, screenshots, steps, severity and lots of other 
fancy stuff to your reports.

Global variable `reporter` available in your tests with such methods:

```
    description(description: string): this;
    severity(severity: Severity): this;
    epic(epic: string): this;
    feature(feature: string): this;
    story(story: string): this;
    startStep(name: string): this;
    endStep(status?: Status): this;
    addArgument(name: string): this;
    addEnvironment(name: string, value: string): this;
    addAttachment(name: string, buffer: any, type: string): this;
    addLabel(name: string, value: string): this;
    addParameter(paramName: string, name: string, value: string): this;
```
**Example**

```
import { Severity } from "jest-allure/dist/Reporter";
import { Feature } from "somwhere in your project";

describe("Fancy test", () => {
        ...
        
        it("Test your amazing feature", async () => {
            reporter
                .description("Feature should work cool")
                .severity(Severity.Critical)
                .feature(Feature.Betting)
                .story("BOND-007");

            reporter.startStep("Check it's fancy");
            // expect that it's fancy
            reporter.endStep();
            
            reporter.startStep("Check it's cool");
            // expect that it's cool
            reporter.endStep();

            const screenshotBuffer = await page.screenshot();
            reporter.addAttachment("Screenshot", screenshotBuffer, "image/png");
        });
        
        ...
    }
);

```
#### What's next

- [x] Generate report from Jest results
- [x] Add steps support
- [x] Add labels support
- [x] Add attachments support
- [x] Add more examples

---

#### Additional projects
[visual-unit-tests](https://github.com/zaqqaz/visual-unit-tests)

[jest-allure-image-snapshot](https://github.com/zaqqaz/jest-allure-image-snapshot)

#### Warning
``jest-allure`` reporter dynamically configure "setupTestFrameworkScriptFile" option in Jest configuration.
**If you have your own setupTestFrameworkScriptFile file**, you need to manually register allure reporter, for it you need to import jest-allure/dist/setup.

```typescript
import "jest-allure/dist/setup";
```

In case if you have jest version > 24 just add `jest-allure/dist/setup` to `setupFilesAfterEnv` section of your config.

## Contributors
| [<img src="https://avatars3.githubusercontent.com/u/2823336?s=460&v=4" width="100px;"/><br/><sub><b>Denis Artyuhovich</b></sub>](https://denis.by) | [<img src="https://avatars1.githubusercontent.com/u/7804416?s=460&v=4" width="100px;"/><br/><sub><b>Dmitry Bogomya</b></sub>](https://github.com/bogomya) |
| ---      | ---       |

---
_Source: https://npm.io/package/jest-allure · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
