To upload Cucumber test results from GitLab CI, you can use the following curl command to do so:

curl -L -X PUT https://test-reports.behave.pro/REST/1.0/bdd/report \

-H "X-API-KEY: $BEHAVE_PRO_API_KEY" \

-H "X-COMMIT-ID: $CI_COMMIT_SHA" \

-H "X-BUILD-ID: $CI_PIPELINE_IID" \

-H "X-BUILD-URL: $CI_PIPELINE_URL" \

--data-binary @./target/cucumber-reports/cucumber.json

Note: Make sure your tool to send the test report follows the http 307 redirects. When using curl this can be done via -L option.

You have to create an environment variable called BEHAVE_PRO_API_KEY with value of API key. If you don't have one, you can create one by following this article: Publishing Cucumber test results.

If you are using a matrix build you have to provide X-PARAM header in the http request as shown below:

curl -L -X PUT https://test-reports.behave.pro/REST/1.0/bdd/report \

-H "X-API-KEY: $BEHAVE_PRO_API_KEY" \

-H "X-COMMIT-ID: $CI_COMMIT_SHA" \

-H "X-BUILD-ID: $CI_PIPELINE_IID" \

-H "X-BUILD-URL: $CI_PIPELINE_URL" \

-H "X-PARAM: Os=Linux" \

-H "X-PARAM: JVM=Java 1.8" \

--data-binary @./target/cucumber-reports/cucumber.json

if you want to learn more about matrix build and living documentation you can read this article: Publishing Cucumber test result from matrix job.


Did this answer your question?