This is the reference documentation for the AssertThat - BDD & Cucumber for Jira REST API. This API is the primary way to get and modify data in the plugin, whether you are developing an app or any other integration. Use it to interact with the plugin for entities, such as features, reports, scenarios and more.
Authentication: All endpoints use basic auth. Refer to Enable & configure AssertThat Plugin to generate API access keys.
Base cloud URL: https://bdd.assertthat.appBase server URL: your company Jira URL
Postman collection and environment with example requests is available for download below.
View file | ||
---|---|---|
|
View file | ||
---|---|---|
| ||
View file | name | assertthat-bdd.postman_environment.json
API Requests
Table of Contents |
---|
Downloading features
...
GET /rest/api/1/project/{projectId}/features
Server:
GET /rest/assertthat/latest/project/{projectId}/client/features
Parameters
Name | Required | Type | Description |
---|---|---|---|
mode | No | String | One of: automated, manual, both |
jql | No | String | JQL filter for scenarios linked to certain issues |
numbered | No | Boolean | Whether to prepend ordinal to the feature name |
tags | No | String | Tag expression to filter features/ scenarios |
Uploading report
...
POST/rest/api/1/project/{projectId}/report
Server:
POST/rest/assertthat/latest/project/{projectId}/client/report
Parameters
Name | Required | Type | Description |
---|---|---|---|
runName | No | String | The name of the run. Default |
metadata | No | Json string | Metadata json |
runId |
No | Long | If submitting new report set to -1. If adding test results to existing should be set to the value return when submitting new report. | |
form-data: file | Yes | Json file | Cucumber json report file |
type | No | String | One of: cucumber, karate. Defaults to cucumber. |
customRunId | No | String | Overrides runId. Should be unique between test runs and same for aggregating results into same execution. |
jql | No | String | JQL filter for updating status of scenarios linked to certain issues |
Updating scenario status
...
PUT /rest/api/1/project/{projectId}/scenario/status
...
Code Block |
---|
{ "featureName": "Feature name", "scenarioName": "Scenario Name", "issueKey": "XXX-123", "comment": "comment", "status": "NOT_RUN | PASSED | FAILED | IN_PROGRESS | SKIPPED | PENDING | UNDEFINED" } |
Get test runs
Cloud:
GET /rest/api/1/project/{projectId}/report/runs
Server:
GET /rest/assertthat/latest/project/{projectId}/client/report/runs
Parameters
Name | Required | Type | Description |
---|---|---|---|
length | No | int | Number of records to return. Default is 10 |
start | No | int | Start index. Default is 0 |
Upload feature
Cloud:
POST /rest/api/1/project/{projectId}/feature
Server:
POST /rest/assertthat/latest/project/{projectId}/client/upload
Name | Required | Type | Description |
---|
projectKey
Yes
Project key (abbreviation)
override | No | boolean | Whether to override feature if exists with same name |
form-data: file | Yes | file | Feature file to upload |
Get scenarios report
...
GET /rest/api/1/project/{projectId}/scenarios/report
Server:
GET /rest/assertthat/latest/project/{projectId}/client/report/runs
Parameters
Name | Required | Type | Description |
---|---|---|---|
length | No | int | Number of records to return. Default is 10 |
start | No | int | Start index. Default is 0 |
Upload scenario executions
POST /rest/api/1/project/{projectId}/scenarios/execution
Body:
Code Block |
---|
{
"scenarioName": "Exanple scenario",
"featureName": "Example feature",
"executions": [
{
"id": 100,
"status": "PASSED",
"issueKey": "DEMO-1",
"comment": "Example comment",
"userId": 10000,
"userEmail": "admin@admin.com",
"timestamp": 1624908743000
},
{
"id": 101,
"status": "IN_PROGRESS",
"issueKey": "DEMO-1",
"comment": "Example comment 2",
"userId": 10000,
"userEmail": "admin@admin.com",
"timestamp": 1624908812000
}
]
} |