Behave JIRA XRAY results uploader
Project description
behave-xray
Installation
$ pip install -U behave-xray
or from the source:
$ python setup.py install
Usage
Add JIRA tags to Gherkin scenario:
# --FILE: tutorial.feature
@jira.test_plan('JIRA-3')
Feature: showing off behave
Feature's description
@jira.testcase('JIRA-1')
Scenario: run a simple test
Given we have behave installed
When we implement a test
Then behave will test it for us!
@jira.testcase('JIRA-2')
Scenario Outline: Add two numbers in Calc
Given Calculator is open
When I add <a> and <b>
Then result is <result>
Examples: Sum
| a | b | result |
| 3 | 4 | 7 |
| 6 | 10 | 18 |
This library also supports the feature files exported from Xray Cucumber tests:
Feature: showing off behave
Feature's description
@TEST_JIRA-1
Scenario: run a simple test
Given we have behave installed
When we implement a test
Then behave will test it for us!
@TEST_JIRA-2
Scenario Outline: Add two numbers in Calc
Given Calculator is open
When I add <a> and <b>
Then result is <result>
Examples: Sum
| a | b | result |
| 3 | 4 | 7 |
| 6 | 10 | 18 |
Configure Jira URL and authentication
Set Jira server API base URL in system environments:
$ export XRAY_API_BASE_URL=<jira URL>
Set system environments for basic authentication:
$ export XRAY_API_USER=<jria username>
$ export XRAY_API_PASSWORD=<user password>
Set system environments for Personal Access Tokens authentication:
$ export XRAY_TOKEN=<Xray token>
Set system environments for Could server authentication with Client ID and Client Secret:
$ export XRAY_CLIENT_ID=<Xray client id>
$ export XRAY_CLIENT_SECRET=<Xray client secret>
Run tests
Run tests against Jira Xray Server+DC:
$ behave -f behave_xray:XrayFormatter
Run tests against Jira Xray Cloud server:
$ behave -f behave_xray:XrayCloudFormatter
You can register formatter in behave.ini
:
# -- FILE: behave.ini
[behave.formatters]
xray = behave_xray:XrayCloudFormatter
and use with shorter name:
$ behave --f xray
Attach an evidence to the scenario
One can implement scenario_xray_result
hook to update results for a scenario.
# - FILE: environment.py
from behave.model import Status
from behave_xray import hookimpl
from behave_xray.evidence import text
@hookimpl
def scenario_xray_result(result, scenario):
if scenario.status == Status.failed:
result.evidences.append(text(data='This is scenario evidence', filename=f'{scenario.name}.txt'))
Customize report
Add summary to a report:
$ behave -f behave_xray:XrayCloudFormatter -D xray.summary='Report generated by behave'
or from behave.ini
file:
# -- FILE: behave.ini
[behave.userdata]
xray.summary = Report generated by behave
Available options:
xray.summary
xray.user
xray.version
xray.revision
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Hashes for behave_xray-0.2.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 49a740e93b6c641d260eec54e7a3fded27444d2d6596863b0a0e79bf8d6cfa02 |
|
MD5 | 67a75d076e0a51f265846bc6ea05f73a |
|
BLAKE2b-256 | 14e206a4bdff14074432d75daa3383a62e720ea1c71549ef6dcf1e80b505ff66 |