Ask a Question

passing result or variable value from Groovy to test step

SOLVED
ravienu
Occasional Contributor

passing result or variable value from Groovy to test step

Dear Team,

I have query below to achieve one of the requirements. I am using ReadyAPI with proper license.

 

I would like to pass Goovy script result as one request body(XML/JSON) parameter for API. I have written a Groovy script and test step under it. But dont know how to specify groovy result as body request parameter.

 

For example:

def today = new Date()
today.format("dd/MM/yyyy")

//Add some random number to Date field and store it in some variable like cutom_date

 

Now  I would like to pass custom_date as request body(XML) parameter for API step under the groovy script  as below

........
........
<app_date>?</app_date>
.......
.......

cutom_date from groovy script should come and sit at ? place above.

 

Can anyone help on this please ?

11 REPLIES 11
ravienu
Occasional Contributor

Hi @nmrao ,

 

it worked with the way you suggested below.

 

Thank you very much and thank for giving relevant documentation links.

 

Thank you all who gave wonderful replies.

 

Cheers.

Ravi.

 

 

jamesjack
Occasional Visitor

import groovy.json.JsonSlurper

testStep = testRunner.testCase.testSteps["YourApiRequestStep"]

def Response = testStep.getProperty("response").value;

def someFieldYouWantToSave = ""


if (Response == null) {
log.error('No Response found.');
}
else {
def jSlurper = new JsonSlurper();
def json = jSlurper.parseText(Response);
if (json.get("theFieldFromTheResponse") == null){
log.error "TheFieldFromTheResponse not found in response. Please execute the teststep and try again"
} else { omegle 
someFieldYouWantToSave = json.get("theFieldFromTheResponse").toString()

// YOUR LOGIC HERE FOR MODIFYING THE "someFieldYouWantToSave" value

//SAVE THE FIELD
testRunner.testCase.setPropertyValue("someFieldYouWantToSave", someFieldYouWantToSave)
}
} Thank you omegle chat 

cancel
Showing results for 
Search instead for 
Did you mean: