José Andias
José Andias

Reputation: 1974

Test CRUD Web services with Robot Framework

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

Answers (1)

José Andias
José Andias

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

Related Questions