GET方式,直接请求
一、前提。
已配置了RF环境,用例里加载以下3个库Collections、 RequestsLibrary、 String
二、demo脚本
推荐使用官方入门Demo,
地址:
https://github.com/bulkan/robotframework-requests/blob/master/tests/testcase.txt
举例:get请求https://api.github.com/users/bulkan
抓包截图
说明:
协议: https
访问的host: api.github.com
root url(基础url):https://api.github.com
相对uri: /users/bulkan
方式: get
传参: 无
对应脚本截图
*** Settings ***
Suite Teardown Delete All Sessions
Library Collections
Library RequestsLibrary
Library String
*** Test Cases ***
case1
Create Session github https://api.github.com #创建session,并给其取名为github
${resp}= Get Request github /users/bulkan #使用session链接的host地址,访问相对路径
Should Be Equal As Strings ${resp.status_code} 200 #断言,检查响应码应为200
Dictionary Should Contain Value ${resp.json()} Bulkan Evcimen #断言,检查响应json包含用户名
三、解释
第一步创建一个到https://api.github.com的session,取个很容易认的别名github。
第二步,使用get方法,访问别名为github的相对路径/users/bulkan。
第3,4步断言返回数据。
对于前面两步,直接使用requests.get方法可以一步完成,强制拆成两步应该是:
1.使用别名,会使后面的请求写起来更顺手,用例也比较好看,大部分时候访问同一地址的请求,不需要重复创建session
2、session的使用,可以实现跨请求保持一些cookie,这个功能才是session的重头戏。
Requests指南:http://docs.python-requests.org/zh_CN/latest/user/quickstart.html
转载自:http://robotframework.net/?/article/90