It's not the same without you

Join the community to find out what other Atlassian users are discussing, debating and creating.

Atlassian Community Hero Image Collage

How to Import Cucumber Results to an Already-Existing Test/Test Execution

I am trying to use the Xray REST API to update test executions for Cucumber tests.

However, whenever I import results (either through the interface in Jira or with curl calls) a new Automated[Generic] test is created within the test execution, and the Automated[Cucumber] test that I am trying to update does not have its status updated.

If I run:

curl -H "Content-Type: application/json" -X GET -u username:password https://jira.ad.myurl.com/rest/raven/1.0/api/test?keys=DJS3-67

 I can find the correct test (key DJS3-67, id 63415). I associated a test execution with it (DJS3-70) as per this similar question  and downloaded my feature file from the execution, but once I run that feature file and import the cucumber.json or JUnit_Report.xml (from the Jira "Import Execution Results" button or from the API), Jira creates a new test issue inside the correct execution and associates the test run with that.

If I were trying to create a generic test, I think I would be able to simply edit the Generic Test Definition, but I need this to be a cucumber test. In this case, what is the best way to point my POST to the correct test (DSJ3-67)?

From digging, it looks like I will be using the cucumber-multipart endpoint, but I cannot find how to specify which test should be associated with the update in the info json file.

Thank you, please let me know if there is more information I can provide.

3 answers

1 accepted

0 votes
Answer accepted

Hi @rgnair 

 

The solution I have found to work has been adding the test execution's key (prefixed by an @ sign) to the top of my feature file prior to running the test. This adds a tag to your test result that will allow you to use curl to update the test execution.

My feature files all start like this:

@@test-exec-key-numbe
Feature:
Scenario Outline:
        Given ...
When ...
Then...

Then after I run my test, I curl:

curl -H "Content-Type: application/json" -k -X POST -u username:password --data @"filepath\to\cucumber.json" https://jira.ad.url.com/rest/raven/1.0/import/execution/cucumber

Hope this helps,

Connor

Thanks you so much @Connor Brown  its worked for me, thanks for the quick response.Here i am using bearer token as my authentication.Its working through Curl and POSTMAN, but when i used to post the xray result  through java using http client i am getting 401

post.setHeader(HttpHeaders.CONTENT_TYPE,"application/json");post.setHeader(HttpHeaders.AUTHORIZATION, "Bearer " + finalToken);

This is the way i am passing my token,i am wondering why 401 in both curl and POSTMAN its working with the above token
@Connor Brown anything i missed here in HTTP headers or any wrong
@Parthasarathy Mani 

 

 

 

@Connor Brown thanks, this makes sense. However, JIRA now using Auth tokens. I tried using mine and I cannot wok out the command.. It says

{"error": "Failed to parse Connect Session Auth Token"}

I used:

curl -H "Content-Type: application/json" -X POST -H "Authorization: Bearer MYTOKEN"  --data @"data.json" https://xray.cloud.xpand-it.com/api/v1/import/execution/cucumber

Hi Connor, 

Can you please open a ticket in our Support?

We need more information to better understand the issue.


Best regards,
Team Xray

Hi José Domingues

I also had the same issue when using the command ,its creating new instance instead of updating the existing key and test.

 

curl -H "Content-Type: application/json" -X POST -u username:password https://"domain"/jira/rest/raven/1.0/import/execution/cucumber?testExeKey=""

hi @Connor Brown is it possible to attach screenshots as execution proof ,either as a single PDF at the end or each step wise screenshot

@Connor Brown also i had tried the comments in one of your support ticket ,tried with byte64 encoding still not get the result

Hi rhnair,

                 I am working on Jenkins Job automation in my scenario I want to send executed cucumber JSON file to TM4J for updating the execution results.But  I dont have sample JSON file. Can you please share your sample JSON cucumber file. Because also working on same thing.

@José Domingues _Xpand IT_ please provide a solution soon

Hi @rgnair 

To better address your issue, our support team will need more details to analyze the error. can you please open a ticket in our Service Desk

Thank you 

Team Xray 

Suggest an answer

Log in or Sign up to answer
TAGS

Community Events

Connect with like-minded Atlassian users at free events near you!

Find an event

Connect with like-minded Atlassian users at free events near you!

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you