Skip to content

Behavior driven development CLI. Write tests in Gherkin and integrate with Git and JIRA.

License

Notifications You must be signed in to change notification settings

aexol-studio/bddx

Repository files navigation

BDDx NPM Version NPM Version NPM Version

Run Behavior-Driven Development tests inside a CLI

Alt Text

What is BDDx?

  • Write tests in Gherkin, Cucumber's simply structured plain-text language
  • Upload BDD test files in bulk,
  • Run tests to execute them line by line for all your files
  • Get a detailed summary on what failed and why
  • Failed tests can be made to automatically result in a Jira task or Github issue to automate the fixing process

Downloads:

GitHub package.json version (subfolder of monorepo) GitHub package.json version (subfolder of monorepo)

CLI commands:

Installation and initialization:

Remember that Node is required

Description Command
to install BDDx: npm i bddx
to initialize BDDx (with optional Jira integration): npx bddx init
to initialize only BDDx Jira integration without changing the basic configuration: npx bddx jiraInit
to check if the Jira API token is working correctly1 : npx bddx checkToken
to connect to bddx cloud2 : npx bddx cloud

1If there's a problem with the loop BDDx will ask the user to provide the correct token value.

2User should create project and generate project key

Config file:

After initializing the config file contains:

{
  "in": "./bddx/tests",
  "out": "./bddx/results",
}

or when Jira is integrated:

{
   "in": "./bddx/tests",
   "out": "./bddx/results",
    "organizationName": "organizationName.atlassian.net",
    "projectName": "ProjectName",
    "issueTypeName": "TASK"
}
  • in: string - input folder with the test files, (default: "./bddx/tests")
  • out: string - output folder where the test result files are saved, (default: "./bddx/results")

The e-mail and Jira API token are saved locally on the machine to ensure safety!

Running tests

Description Command
to run all .feature tests and save results in a file in the output directory: npx bddx
to run all .feature tests and create a task for each failed one on the configured Jira: npx bddx jira
to select an unfinished session and continue the tests from that point (you will also be asked about Jira usage): npx bddx continue
to run all failed .feature tests in selected source and submit results to the bddx cloud: npx bddx failedTest

Roadmap

  • 2 test scenarios: display test & pass or fail test
  • Jira plugin
  • GitHub plugin