Reputation: 1974
What would be the simplest way to use Robot Framework for testing a CRUD (or resource oriented) Web Service using JSON media type?
Example Read interaction:
GET /user/666 HTTP/1.1
Host: example.com
HTTP/1.1 404 Not Found
Example Create interaction:
POST /user HTTP/1.1
Host: example.com
Content-Type: application/json
{
"firstname":"Webber",
"lastname":"Jim"
}
HTTP/1.1 201 OK
Content-Type: application/json
{
"id": 9780596805821,
"firstname":"Webber",
"lastname":"Jim"
}
Upvotes: 1
Views: 1273
Reputation: 1974
One could use standard libraries and robotframework-requests like so:
*** Settings ***
Library Collections
Library OperatingSystem
Library RequestsLibrary
*** Test Cases ****
Create User
Create Session example http://example.com
${file_data}=
... Get Binary File ${RESOURCES}${/}normal_user.json
${headers}=
... Create Dictionary Content-Type application/json
${resp}=
... Post Request example /user data=${file_data} headers=${headers}
Should Be Equal As Strings
... ${resp.status_code} 201
Dictionary Should Contain Key
... ${resp.json()} id
Upvotes: 1