pytest-testrail-api-client

TestRail Api Python Client


License
MIT
Install
pip install pytest-testrail-api-client==0.3.9

Documentation

testrail-api-client

testrail-api-client - is a client for provide integration with TestRail

General information about TestRail Api

Requirements

  • requests
  • pytest
  • gherkin-official
  • pytest-bdd

Installation

pip install pytest-testrail-api-client

Configuration Starting from version 0.3 you can configure testrail client credentials with 3 way:

Way 1. Directly set credentials in class constructor

from pytest_testrail_api_client.test_rail import TestRail
test_rail = TestRail('your_host', 'your_username', 'your_token')

Way 2. Set credentials in pytest.ini or in test_rail.ini This files must be in root folder project path Add group [pytest] Add variables:

  • testrail-email
  • testrail-key
  • testrail-url

Example pytest.ini or test_rail.ini

[saucelab]
testrail-email = your_email
testrail-key = your_token
testrail-url = your_host

When you add credentials to ini file:

from pytest_testrail_api_client.test_rail import TestRail
test_rail = TestRail()

Way 3. You can set environment variables:

  • TESTRAIL_EMAIL
  • TESTRAIL_KEY
  • TESTRAIL_URL

When you add credentials to environment variables:

from pytest_testrail_api_client.test_rail import TestRail
test_rail = TestRail()

Features in version: 0.3.1

  • Access to TestRail Api
  • Export feature files to TestRail (use pytest --pytest_testrail_export_test_cases --pytest-testrail-feature-files-relative-path "%RELATIVE_PATH%")
  • Export tests results to TestRail (use pytest --pytest-testrail-export-test-results --pytest-testrail-test-plan-id %PLAN_ID% --pytest-testrail-test-configuration-name %CONFIGURATION%)
  • Scenarios validation (please, see pytest_testrail_api_client/client_config.py)
  • Tags replacing (for example: you have automation status "To Be Automated" and you use tag "to_automate" if feactures you can set it in variable REPLACE_TAGS - it will bind these tags)
  • Priority replace: variable PRIORITY_REPLACE

Usage examples

from pytest_testrail_api_client.test_rail import TestRail
test_rail = TestRail()
case = test_rail.cases.get_case(1)