使用机器人框架测试JSON媒体类型的CRUD(或面向资源)Web服务的最简单方法是什么?
示例读取交互:
GET /user/666 HTTP/1.1
Host: example.com
HTTP/1.1 404 Not Found
示例 创建交互:
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"
}
可以使用标准库和robotframework请求,如下所示:
*** 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