# @wdio/spec-reporter

> A WebdriverIO plugin to report in spec style

Latest version **9.32.0** (published 2026-09-20) · MIT license · 0 weekly downloads

## Install

```sh
npm install @wdio/spec-reporter
pnpm add @wdio/spec-reporter
yarn add @wdio/spec-reporter
bun add @wdio/spec-reporter
```

## Health

**Score 70/100 (B)** — status: active.

Positive: has types; esm support; no vulnerabilities; has provenance; recently updated; high maintenance score.

Warnings: low downloads.

## Facts

| | |
|---|---|
| Version | 9.32.0 |
| Published | 2026-09-20 |
| First published | 2018-11-06 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | ESM |
| Node | >=18.20.0 |
| Dependencies | 5 |
| Unpacked size | 36.9 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Provenance | attested (GitHub Actions) |
| GitHub stars | 9842 |
| Author | Christian Bromann |
| Maintainers | christian-bromann, wdio-user, wswebcreation-nl |
| Keywords | webdriver, wdio, wdio-reporter |

## Links

- npm: https://www.npmjs.com/package/@wdio/spec-reporter
- Repository: https://github.com/webdriverio/webdriverio
- Homepage: https://github.com/webdriverio/webdriverio/tree/main/packages/wdio-spec-reporter
- Issues: https://github.com/webdriverio/webdriverio/issues
- npm.io page: https://npm.io/package/@wdio/spec-reporter

## Dependencies (5)

- [chalk](https://npm.io/package/chalk.md) ^5.1.2
- [pretty-ms](https://npm.io/package/pretty-ms.md) ^9.0.0
- [easy-table](https://npm.io/package/easy-table.md) ^1.2.0
- [@wdio/types](https://npm.io/package/@wdio/types.md) 9.32.0
- [@wdio/reporter](https://npm.io/package/@wdio/reporter.md) 9.32.0

## Recent versions

- 9.32.0 (latest) — 2026-09-20
- 9.32.0-alpha.14 (next) — 2026-09-13
- 8.43.0 (v8) — 2025-03-05
- 7.40.0 (v7) — 2024-12-18
- 9.0.0-alpha.0 (v9) — 2024-03-12
- 7.0.0-beta.4 (beta) — 2021-02-09
- 5.23.0 (latest-5) — 2020-05-25
- 9.32.0-alpha.13 — 2026-09-13
- 9.32.0-alpha.6 — 2026-09-13
- 9.32.0-alpha.0 — 2026-09-13
- 9.32.0-alpha.3 — 2026-09-13
- 9.31.2 — 2026-08-21
- 9.31.1 — 2026-08-18
- 9.30.1 — 2026-08-03
- 9.29.1 — 2026-06-26
- … 318 more at https://npm.io/package/@wdio/spec-reporter/versions

## README

WDIO Spec Reporter
==================

> A WebdriverIO plugin to report in spec style.

![Spec Reporter](/img/spec.png "Spec Reporter")

## Installation

The easiest way is to keep `@wdio/spec-reporter` as a devDependency in your `package.json`, via:

```sh
npm install @wdio/spec-reporter --save-dev
```

Instructions on how to install `WebdriverIO` can be found [here](https://webdriver.io/docs/gettingstarted).

## Configuration

The following code shows the default wdio test runner configuration. Just add `'spec'` as a reporter
to the array.

```js
// wdio.conf.js
module.exports = {
  // ...
  reporters: ['dot', 'spec'],
  // ...
};
```

## Spec Reporter Options
### symbols
Provide custom symbols for `passed`, `failed` and or `skipped` tests

Type: `object`
Default: `{passed: '✓', skipped: '-', failed: '✖'}`

#### Example
```js
[
  "spec",
  {
    symbols: {
      passed: '[PASS]',
      failed: '[FAIL]',
    },
  },
]
```

### sauceLabsSharableLinks
By default the test results in Sauce Labs can only be viewed by a team member from the same team, not by a team member
from a different team. This options will enable [sharable links](https://docs.saucelabs.com/test-results/sharing-test-results/#building-sharable-links)
by default, which means that all tests that are executed in Sauce Labs can be viewed by everybody.
Just add `sauceLabsSharableLinks: false`, as shown below, in the reporter options to disable this feature.

Type: `boolean`
Default: `true`

#### Example
```js
[
  "spec",
  {
    sauceLabsSharableLinks: false,
  },
]
```

### onlyFailures
Print only failed specs results.

Type: `boolean`
Default: `false`

#### Example
```js
[
  "spec",
  {
    onlyFailures: true,
  },
]
```

### addConsoleLogs
Set to `true` to show console logs from steps in final report

Type: `boolean`
Default: `false`

```js
[
  "spec",
  {
    addConsoleLogs: true,
  },
]
```

### realtimeReporting
Set to `true` to display test status realtime than just at the end of the run

Type: `boolean`
Default: `false`

```js
[
  "spec",
  {
    realtimeReporting: true,
  },
]
```

### showPreface
Set to `false` to disable `[ MutliRemoteBrowser ... ]` preface in the reports.

Type: `boolean`
Default: `true`

```js
[
  "spec",
  {
    showPreface: false,
  },
]
```

With it set to `false` you will see output as:
```
Running: loremipsum (v50) on Windows 10
Session ID: foobar

» foo/bar/loo.e2e.js
Foo test
   green ✓ foo
   green ✓ bar

» bar/foo/loo.e2e.js
Bar test
   green ✓ some test
   red ✖ a failed test
   red ✖ a failed test with no stack
```

and with `true` (default) each line will be prefixed with the preface:
```
[loremipsum 50 Windows 10 #0-0] Running: loremipsum (v50) on Windows 10
[loremipsum 50 Windows 10 #0-0] Session ID: foobar
[loremipsum 50 Windows 10 #0-0]
[loremipsum 50 Windows 10 #0-0] » foo/bar/loo.e2e.js
[loremipsum 50 Windows 10 #0-0] Foo test
[loremipsum 50 Windows 10 #0-0]    green ✓ foo
[loremipsum 50 Windows 10 #0-0]    green ✓ bar
[loremipsum 50 Windows 10 #0-0]
[loremipsum 50 Windows 10 #0-0] » bar/foo/loo.e2e.js
[loremipsum 50 Windows 10 #0-0] Bar test
[loremipsum 50 Windows 10 #0-0]    green ✓ some test
[loremipsum 50 Windows 10 #0-0]    red ✖ a failed test
[loremipsum 50 Windows 10 #0-0]    red ✖ a failed test with no stack
[loremipsum 50 Windows 10 #0-0]
```

### color
Set to `true` to display colored output in terminal

Type: `boolean`
Default: `true`

```js
[
  "spec",
  {
    color: true,
  },
]
```

## Environment Options

There are certain options you can set through environment variables:

### `FORCE_COLOR`

If set to true, e.g. via `FORCE_COLOR=0 npx wdio run wdio.conf.js`, all terminal coloring will be disabled.

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