@avatarneil/jest-2-testrail

1.1.1 • Public • Published

TestRail v4.1

Jest2TestRail

Fork of: https://github.com/zeljkosimic95/Jest-2-Testrail, adding support for inheriting suite_id from the top-most describe block.

This package allows you to use Jest in conjunction with TestRail.

  • It can automatically create a new test run on TestRail.
  • It can automatically send test results to TestRail - after they've been run.

(This package is based on a similar reporter for Protractor - Jasmine 2 testrail)

Install

npm i jest-2-testrail

Example - jest-config.js

The Reporter must be specified in the jest-config.js file, under 'reporters'.
This file should be created in your project's root folder.
Parameters are defined as 'project_id', which is the id of your project on TestRail,
and 'suite_id', which is the id of the suite that should be included in the test run.
This suite_id is used as a fallback if suite_id is unavailable from a parent describe block.

module.exports = {
  moduleFileExtensions: ["js", "json", "ts"],
  rootDir: ".",
  testEnvironment: "node",
  testRegex: ".test.ts$",
  transform: { "^.+\\.(t|j)s$": "ts-jest" },
  reporters: [
    "default",
    ["jest-2-testrail", { project_id: "1", suite_id: "1" }]
  ]
};

Example - tests

The Case ID from TestRail must be added to the start of each it() description,
and separated from the test name by a colon - ":".

// "1:" this is the (optional) Suite ID from Test Rail
describe("1: Login Page", () => {
  // "10:" this is Case ID from Test Rail
  it("10: Login success", async () => {
    expect(1).toBe(1);
  });

  it("20: Login fail", async () => {
    expect(1).toBe(0);
  });

  xit("30: Registration", async () => {
    expect(1).toBe(1);
  });
});

Note: The Case ID is a unique and permanent ID of every test case (e.g. C125),
and shoudn't be confused with a Test Case ID, which is assigned to a test case
when a new run is created (e.g. T325).

Example - .env file

This file needs to be created in your project's root folder.
It must contain the URL of your TestRail, username (email address) and password (or API key).
This file needs to have all 3 parameters correctly filled.

NETWORK_URL = https://<YourProjectURL>.testrail.io
USERNAME = email address
PASSWORD = password or API key

Enable TestRail API

In order to use TestRail API, it needs to be enabled by an administrator
in your own TestRail Site Settings. Also if you want to use API authentication instead of your password,
enable session authentication for API in the TestRail Site Settings,
and add an API key in your User settings (This is recommended).

Authors


Slobodan Dušanić

Željko Simić

Neil Goldader

Special thanks


Marko Rajević

Bogdan Petković

License

This project is licensed under the MIT License - see the LICENSE file for details.

Package Sidebar

Install

npm i @avatarneil/jest-2-testrail

Weekly Downloads

2

Version

1.1.1

License

MIT

Unpacked Size

10.8 kB

Total Files

5

Last publish

Collaborators

  • avatarneil