1.0.5 • Published 12 months ago

newman-reporter-testrail-neo v1.0.5

Weekly downloads
-
License
MIT
Repository
github
Last release
12 months ago

newman-reporter-testrail-neo

codecov

!NOTE This repository is inspired by billylam/newman-reporter-testrail. Unfortunately, the project has been archived and is no longer maintained. So, I decided to create a new project based on the original one.(not forked)

TestRail reporter for Newman.

Installation

  • npm i newman-reporter-testrail-neo

Usage

Prefix all test assertions you wish to map with the test number.

Include the letter C. You may map more than one test case to an assertion.

pm.test("C226750 C226746 Status code is 200", function () {
    pm.response.to.have.status(200);
});

Export the following environment variables.

REQUIRED Environment Variables

NameDescription
TESTRAIL_DOMAINTestRail domain. Do not include protocol.
TESTRAIL_USERNAMETestRail username / email.
TESTRAIL_APIKEYTestRail API key.
TESTRAIL_PROJECTIDTestRail project id.

OPTIONAL Environment Variables

NameDescription
TESTRAIL_RUNIDTestRail run id. Update a specific run instead of creating a new run. Can use the string "latest" to update latest run.
TESTRAIL_SUITEIDTestRail suite id. Mandatory in multi-suite projects. Do not use in single-suite projects.
TESTRAIL_MILESTONEIDMilestone to link test to.
TESTRAIL_PLANIDTest Plan Id to add run to. NOTE: Requires TESTRAIL_SUITEID to be set even in single-suite projects.
TESTRAIL_VERSIONVersion of API tested.
TESTRAIL_TITLETitle of test run to create.
TESTRAIL_REFSRef of test run to create.
TESTRAIL_INCLUDEALLWhether to include all tests in run, regardless of whether actually run by Newman. Defaults to true.
TESTRAIL_CLOSE_RUNWhether to close the TestRail run after completion of the Newman run. Defaults to false.
TESTRAILCUSTOM*A fixed testrail field, where * is the field key
TESTRAIL_LOGGINGOutput logging. Options are full, headers, none. Defaults to full. Use the none or headers option if you are getting a "Request Entity Too Large" error.
TESTRAIL_PASSED_IDThe ID of a custom status to use for Passed. Defaults to 1 which is the value for the Passed status.
TESTRAIL_FAILED_IDThe ID of a custom status to use for Failed. Defaults to 5 which is the value for the Failed status.
TESTRAIL_SKIPPED_IDThe ID of a custom status to use for Skipped. Defaults to 4 which is the value for the Skipped status.
TESTRAIL_STEPSProject uses test steps. Test cases that share the same case id are assumed to be steps for the same test case. Defaults to false.
TESTRAIL_STEPRESULT_KEYIf TESTRAIL_STEPS is set to true and your TestRail configuration changed the Step Results field to another value then you can set this env variable to the correct name. By default this is set to "step_results".
TESTRAIL_TITLE_MATCHINGAttempt to fetch test cases from server and match via case name instead of id
TESTRAIL_BETA_APISet to true to add additional X-API-IDENT: BETA header. Can be needed in order to use reporter with older TestRail versions (before Feb. 21, 2021). Defaults to false.

You can use direnv to easily maintain directory-specific options.

You may also set some or all of these variables using bash exports or by declaring directly in the run command.

Run newman with the reporter option

-r testrail-neo

Example:

TESTRAIL_DOMAIN=example.testrail.com TESTRAIL_USERNAME=exampleuser 
TESTRAIL_APIKEY=yourkey TESTRAIL_PROJECTID=99 TESTRAIL_TITLE="Dev-API Regression" 
newman run my-collection.postman_collection.json -r testrail,cli

Development

!NOTE I'd like to automate the system test process, but TestRail doesn't have any free plans. So, it's difficult to prepare the test environment. Currently, I'm using my own TestRail account to test the system test.

How to System Test

  1. export environment variables
export TESTRAIL_DOMAIN=hoge.com
export TESTRAIL_USERNAME=hoge@example.com
export TESTRAIL_PROJECTID=1
export TESTRAIL_APIKEY=fugafuga
  1. pack this package
npm pack
  1. install the package
# x.x.x is the version of the package
npm i -g ./newman-reporter-testrail-neo-x.x.x.tg
  1. run system test
newman run ./test/systemTest/system_test.json -r testrail-neo
1.0.5

12 months ago

1.0.4

12 months ago

1.0.3

12 months ago

1.0.0

12 months ago