testrail-cucumber-mapper

2.0.9 • Public • Published

TestRail-Cucumber Mapper

This tool is designed to help you map Cucumber feature files to TestRail. It will create a new Section in testRail if it does not exist and upload the feature file to the testRail. For each scenario in the feature file, it will create a new test case in the testRail and map the test case to the scenario. Also It can be used to upload multiple feature files in a directory to TestRail (in-progress).

Features

  • Map Cucumber feature files to TestRail
  • Create a new Section in TestRail if it does not exist
  • Create a new test case in TestRail for each scenario in the feature file
  • Map the test case to the scenario
  • Upload multiple feature files in a directory to TestRail (in-progress)
  • Update the existing test cases (in-progress)
  • Add Tags in Refs and Other Fields (in-progress)
  • Add Functionality for Test Run (in-progress)
  • Dockerize the Application to run from CI (in-progress)

Installation

You can install the TestRail-Cucumber Mapper globally using npm:

git clone git@github.com:afsarali-pg/testrail-cucumber-mapper.git
cd testrail-cucumber-mapper
npm install
npm run compile

# Now you can access the command line tool
testrail

Usage

Authentication

Before using TestRail-Cucumber Mapper, you need to set up your TestRail credentials. You can do this by running:

or create a .env file in the root directory of the project and add the following environment variables:

export TR_USERNAME=<your_username>
export TR_PASSWORD=<your_password>
export TR_URL=<your_testrail_url>

export FEATURES_PATH=marketplace-qaautomation/tests/features/api,marketplace-qaautomation/tests/features/ui
export TESTRAIL_SECTION_NAME=Automation #Optional , If you want to create a new section/ use existing section in TestRail project
exort  TESTRAIL_PROJECT_NAME=Fintech  #Optional If you select the project name as Other then this will be used

REDIS_HOST=<REDIS_HOST>
REDIS_DB=4
RUN_NAME='integration - guruland test results for desktop with Github Run 334'
CUCUMBER_JSON_FILE_PATH=/Users/mohammedafsar/Repository/POC/testrail-cucumber-mapper/cucumber-report.json

#MILESTONE_ID=1 # TestRail Milestone ID
#PLAN_ID=1 # TestRail Test Plan ID

SLACK_ICON_EMOJI=:warning:
SLACK_CHANNEL='#afsar-test'
SLACK_BOT_NAME='Test Rail Bot'
SLACK_WEBHOOK_URL=<SLACK_WEBHOOK_HERE>

Or you can use .env file:

Mapping Test Cases

To map TestRail test cases to Cucumber scenarios, you can run the following command:

tesrail

Then Follow the prompts to map the test cases to the cucumber scenarios.

TestRail TestRun

testrail -r "test_run" -p "Fintech"

Here -r = run type and -p = project name

TestRail Cucumber feature file Sync

testrail -r "test_case" -p "Fintech" -f "/Users/mohammedafsar/Repository/marketplace-qaautomation/tests/features/api/fintech/my-prequal"

Here -r = run type and -p = project name and -f = feature file path

CommandLine Run

Contributing

Contributions are welcome! If you'd like to contribute to TestRail-Cucumber Mapper, please follow these steps:

  1. Fork the repository.
  2. Create your feature branch: git checkout -b feature/my-feature.
  3. Commit your changes: git commit -am 'Add my feature'.
  4. Push to the branch: git push origin feature/my-feature.
  5. Submit a pull request.

Version

Current version: 1.0.7

TODO

  • [x] Upload Single Cucumber Feature File to TestRail
  • [x] Upload Multiple Cucumber Feature Files in a directory to TestRail
  • [x] Add Tags in Refs and Other Fields
  • [ ] Add Functionality to update the existing test cases
  • [x] Add Functionality for Test Run
  • [ ] Dockerize the Application to run from CI
  • [x] Add Slack Notification

License

This project is licensed under the MIT License.

Readme

Keywords

none

Package Sidebar

Install

npm i testrail-cucumber-mapper

Weekly Downloads

52

Version

2.0.9

License

ISC

Unpacked Size

289 kB

Total Files

59

Last publish

Collaborators

  • afsarali