Sending JDBC response to REST API assertion
Need some input on this below scenario(Using SOAPUI Free version to test this scenario) :validate distinct group name in JDBC request exist in REST API response (JSON format)
1) Generated a JDBC request to get distinct values from a table:
select distinct(groupname) from tableA . Here below is how my sample JDBC response :
<Results>
<ResultSet fetchSize="128">
<Row rowNumber="1">
<GROUPNAME>All TEST</GROUPNAME>
</Row>
<Row rowNumber="2">
<GROUPNAME>TEST 1</GROUPNAME>
</Row>
<Row rowNumber="3">
<GROUPNAME>TEST 2</GROUPNAME>
</Row>
<Row rowNumber="4">
<GROUPNAME>TEST 3</GROUPNAME>
</Row>
</ResultSet>
</Results>
Step2) created a REST API request which gets this below response.
{
"data": [
{
"Leadtime": 60,
"size": 17,
"name": "All TESTS",
"isactive": true,
"isapprove": true,
"isocommit": true,
},
{
"Leadtime": 60,
"size": 16,
"name": "TEST1",
"isactive": true,
"isapprove": true,
"isocommit": true,
},
{
"Leadtime": 60,
"size": 18,
"name": "TEST2",
"isactive": true,
"isapprove": true,
"isocommit": true,
},
],
"status": 200,
"success": true
}
3) Added a JSONPATH match assertion to REST API request where assertion fails
Jsonpathexpression = $..data.name
expected results = ${JDBC Request#ResponseAsXml#//ResultSet/Row/NAME}
Actual was [ALL TESTS,Group 1, group2,group3,group4]
Expected [ALL TESTS]
for some reason Expected results is only picking first name node [ALL TESTS] as opposed to " [ALL TESTS,Group 1, group2,group3,group4]" and fails my test
Can anyone shed some light on what i am doing wrong on this