HTTP 接口自动化测试
- 3.1 HttpLibrary.HTTP 库的使用
- 安装
- 导入
- 3.1.1 Create Http Context
- 3.2 RequestsLibrary 库的使用
- 安装
- 导入
- 3.2.1 Create Session 和 Get Request
- 1. Create Session
- 2. Get Request
- 3.2.2 Post Request
- 3.2.3 RequestsLibrary 库的其他关键字
- 3.3 RESTinstance 库的使用
- 安装
- 导入
- RESTinstance 库提供的主要常用关键字
HTTP 接口自动化测试是常见的一种自动化测试需求和需要
在 RobotFramework 中,RequestsLibrary、HttpLibrary.HTTP、REST 等库都可以用来做 HTTP 接口方面的自动化测试
3.1 HttpLibrary.HTTP 库的使用
安装
pip install --upgrade robotframework-httplibrary
导入
- 有可能会遇到导入失败的问题
3.1.1 Create Http Context
要想使用 HttpLibrary,Create Http Context
关键字是必不可少的,其作用相当于创建了一个 HTTP 调用的环境
Create Http Context
关键字需要接收两个参数:host 和 scheme
- host 参数等同于 HTTP 协议中 Header(头部)中的 Host(指定请求的服务器的域名和端口号)
- scheme参数如果没有传入,就默认为 http,也可以传入 https(调用时使用 HTTPS 协议)
因与 Python 3 不兼容,出现如下问题,此库笔记停止记录
3.2 RequestsLibrary 库的使用
安装
pip install -U requests
pip install -U robotframework-requests
导入
3.2.1 Create Session 和 Get Request
1. Create Session
Create Session
关键字用来向 HTTP 服务端创建一个 Session,接收 [ alias | url |headers={} | cookies=None | auth=None | timeout=None | proxies=None |verify=False ] 八个参数
2. Get Request
Get Request
关键字用来在创建好 Session 的基础上向服务端发送一个 get 请求,接收 [ alias| uri | headers=None | params={} | allow_redirects=None ] 五个参数
- Log 中有一条警告:
RequestsLibrary.Get Request
已被弃用,请使用GET On Session
代替- 已尝试替换,使用规则和效果一样
3.2.2 Post Request
Post Request
关键字用来在创建好 Session 的基础上向服务端发送一个 post 请求,接收 [ alias| uri | data={} | headers=None | files={} | allow_redirects=None] 六个参数
- 其中 data、headers、files 这几个参数,如果需要传入,那么都应该以字典的形式传入
3.2.3 RequestsLibrary 库的其他关键字
3.3 RESTinstance 库的使用
RESTinstance 库主要提供了用于 Restful 服务的 JSON 请求报文方式的关键字,可以通过在 cmd命令行中输入“pip install --upgrade RESTinstance”进行在线安装。安装完成后,通过如图3-3-1所示的方式导入RESTLibrary。
安装
pip install --upgrade RESTinstance