Profile
Back to NewsBack
GitHub Trending 4 min
Reader Mode
testomatio/reporter: Testomatio Reporter

testomatio/reporter: Testomatio Reporter

Testomatio Reporter

👋 Hey, do you need some test reporting?

Testomat.io Reporter is a library that integrates with popular JavaScript and TypeScript test frameworks to provide a common interface for test reporting. By default, Testomat.io Reporter works with our reporting cloud service Testomat.io App, however it is not locked to it. Reporter can be used as a standalone tool.

Features

Testomat.io Reporter (this npm package) supports:

!testomatio-reporter

How It Works

Testomat.io Reporter provides common API to store and organize test reports. It can receive test result data from any test framework and send it to different services via pipes.

| 🌊 Input | 📊 Output | | ---------- | -------------------------------------------- | | Playwright | Report to GitHub | | Cypress | Report to GitLab | | Jest | Report to Testomat.io | | ... | ... your custom report |

If you use multiple test frameworks and you need to use one customizable reporter, check Testomat.io Reporter, as you can adjust it once and attach it to all your projects.

Artifacts like screenshots, videos, traces, are uploaded to your own cloud storage via S3 protocol. Artifacts can be uplaoded privately or publicly, and used in reports.

Installation

To enable Testomat.io Reporter install @testomatio/reporter package

Use one of your favorite package managers:

npm install @testomatio/reporter --save-dev
pnpm install @testomatio/reporter --save-dev
yarn add @testomatio/reporter --dev

For Yarn 4 (Berry), use CLI wrapper package:

yarn add testomatio-reporter-cli --dev
npx testomatio-reporter <command> [options]

Getting Started

1️⃣ Attach Reporter to the Test Runner

| | | | | ----------------------------------------------- | --------------------------------------------- | --------------------------------------------------------- | | Playwright | CodeceptJS | Cypress | | Jest | Mocha | WebDriverIO | | TestCafe | Detox | Codeception | | Newman (Postman) | JUnit | NUnit | | PyTest | PHPUnit | Protractor | | Allure | | |

or any other via JUnit report....

2️⃣ Configure Reports

!GitHub report

GitHub report published as a comment to Pull Request:

3️⃣ Enable Artifacts Storage

  1. Create bucket on AWS, Google Cloud, or any other cloud storage provider supporting S3 protocol.
  2. Pass S3 credentials to reporter to enable artifacts uploading.

4️⃣ Use Logger

Intercept your logger messages or log anything with our Logger (_work in progress_).

5️⃣ TESTOMATIO HTML Report

Testomatio now features a custom reporting tool that allows you to generate a standalone HTML/CSS report for easy visualization of your test runs. This mode provides a quick way to gain a clear and visually appealing overview of your test execution.

With our reporter, you can:

  • Easily analyze the results of your test runs in a convenient HTML format.
  • Visualize data on successful and failed tests, including statistics and error details.
  • Quickly share reports with your team members or stakeholders.
!HTML report

Learn more about generating HTML reports here

6️⃣ Add to CI Pipeline

After you tested reporter locally add it to your CI pipeline.

We prepared some example workflows that might help you to get it running.

🎉 You are all set!

Bring this reporter on CI and never lose test results again!

Documentation

- Testomat.io - GitHub - Gitlab - CSV - HTML report - Markdown report - Bitbucket

Development

REST API

Testomat.io App uses REST API to collect data from the reporter.

👉 API Reference

Debug Logs

To enable verbose logging run tests with DEBUG environment variable:

To print all reporter logs:

DEBUG=@testomatio/reporter:*

To print all reporter logs of a specific pipe:

DEBUG=@testomatio/reporter:pipe:github
Chat with me