Cucumber .feature files can be exported from Xray and executed externally. They can be generated from the following Xray issues:

  • Test
  • Test Set
  • Test Execution
  • Test Plan

Or, from an Issue mapped as a Requirement issue type.

If the language defined to export the cucumber .feature files is not the default (i.e., En), then a language tag will be added.

Rules

Xray generates Cucumber .feature files according to the context issue and the following rules:

Test:
  • A single Cucumber feature file is generated for each requirement associated with this Test.
  • The feature contains the feature header description of the associated requirement, if present.
  • The feature contains the background of the Test, if present in the Pre-Condition associated with it.
  • The feature contains the Scenario/Scenario Outline defined in this Test.
Test Set, Test Execution, Test Plan or Requirement issue:
  • A single Cucumber feature file is generated for each different tuple (Requirement, Pre-Condition).
  • A Test Execution does not contain repeated tests.
  • If a Test is not associated with a requirement, then it will be exported as an independent feature file.
  • If a Test is associated with more than one requirement, then a feature file will be generated for each requirement. The generated .feature files will contain repeated test scenarios.
  • The feature contains the feature header description of the associated requirement, if present.
  • The feature contains the common background of the Tests, if present in the Pre-Condition.
  • The feature contains the Scenario/Scenario Outline for all the tests.

Feature File Format

 

[ #language: { language } ]
[ @{ Test Execution issue Key } ]
[ @{ Requirement issue Key } ]
Feature: [{ Requirement Issue Summary }]
    [{ Requirement Issue Description }]
     
    [Background:
        { Pre-Conditions }]
     
    [# { Test Issue Description }]
    @{ Test Issue Key } 
    [@{ SubRequirement Issue Key 1 } ... @{ SubRequirement Issue Key N }] 
    [@{ Test Set Issue Key 1 } ... @{ Test Set Issue Key N }] 
    [@{ Test Issue Label 1 } ... @{ Test Issue Label N}]
    Scenario [Outline]: { Test Issue Summary }
        {Test Issue Steps}
    ...

Feature File Naming Convention

 

<sequential_id_one_based>[_<issue_requirement_key>][_<issue_precondition_key>]

Example

Exporting a Test Execution with the following Tests:

Key
Requirement
Pre-Condition
T1R1C1
T2R1-
T3-C2
T4R2C1
T5R2C3
T6--
T7R2, R3C1
T8R2, R3-
T9

-

C2
T10R1C1

generates the following 9 feature files:

File
Requirements
Pre-Condition
Tests
Filename
1R1C1T1, T101_R1_C1.feature
2R1-T22_R1.feature
3R2C1T4, T73_R2_C1.feature
4R2C3T54_R2_C3.feature
5R2-T85_R2.feature
6R3-T86_R3.feature
7R3C1T77_R3_C1.feature
8-C2T3, T98_C2.feature
9--T69.feature
  • No labels