接口测试框架Requests
Posted 丸子说测试
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了接口测试框架Requests相关的知识,希望对你有一定的参考价值。
测试框架基本能力
- 项目管理:pip、 virtualenv
- 用例编写:pytest
- 领域能力:app、 web、http
- 执行调度:pytest、pycharm、shell、jenkins
- 测试报告:allure2
HTTP测试能力
- 请求方法构造:get、post、put、delete、head... ...
- 请求体构造:form、json、xml、binary
- 响应结果分析:status code、response body、json path、xpath
Requests框架特点
- 功能全面:http/https支持全面
- 使用简单:简单易用,不用关心底层细节
- 定制性高:借助于hook机制完成通用处理
- 官网:https://docs.python-requests.org/zh_CN/latest/
Requests常见http请求构造方法
import requests
r = requests.put('https://httpbin.org/put', data={'key':'value'})
r = requests.delete('https://httpbin.org/delete')
r = requests.head('https://httpbin.org/get')
r = requests.options('https://httpbin.org/get')
实战环节
- 测试脚本
import requests
class TestDemo:
def test_get(self):
r = requests.get("http://httpbin.testing-studio.com/get")
print(r.status_code)
print(r.text)
print(r.json())
assert r.status_code == 200
- 测试结果
test_requests.py::TestDemo::test_get
============================== 1 passed in 0.76s ==============================
Process finished with exit code 0
PASSED [100%]200
{
"args": {},
"headers": {
"Accept": "*/*",
"Accept-Encoding": "gzip, deflate",
"Host": "httpbin.testing-studio.com",
"User-Agent": "python-requests/2.25.0",
"X-Forwarded-Host": "httpbin.testing-studio.com",
"X-Scheme": "https"
},
"origin": "101.205.253.7",
"url": "https://httpbin.testing-studio.com/get"
}
{'args': {}, 'headers': {'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'Host': 'httpbin.tes
最后为方便大家学习测试,特意给大家准备了一份13G的超实用干货学习资源,涉及的内容非常全面。
包括,软件学习路线图,50多天的上课视频、16个突击实战项目,80余个软件测试用软件,37份测试文档,70个软件测试相关问题,40篇测试经验级文章,上千份测试真题分享,还有2021软件测试面试宝典,还有软件测试求职的各类精选简历,希望对大家有所帮助……
关注我公众号:【程序员二黑】即可获取这份资料了!
如果你不想再体验一次自学时找不到资料,没人解答问题,坚持几天便放弃的感受的话,可以加入我们的群:785128166 大家一起讨论交流,里面也有各种软件测试资料和技术交流。
以上是关于接口测试框架Requests的主要内容,如果未能解决你的问题,请参考以下文章
Python接口测试之对MySQL/unittest框架/Requests 的操作