一、接口断言使用场景
- 问题:
- 如何确保请求可以发送成功。
- 如何保证符合业务需求。
- 解决方案:
- 通过获取响应信息,验证接口请求是否成功,是否符合业务需求。
二、响应结果对象
# Response就是一个响应对象
r: Response = requests.get('http://www.example.com')
三、响应结果类型
属性 |
含义 |
r=requests.request() |
响应Response对象(可以使用任意的变量名) |
r.status_code |
HTTP响应码 |
r.headers |
返回一个字典,包含所有响应头信息 |
r.text |
返回响应的内容,是一个字符串 |
r.url |
编码之后请求的url |
r.content |
返回响应的内容,是一个字节流 |
r.raw |
返回原始的内容 |
r.json() |
如果响应的内容是json格式,可以使用该方法将其解析成python对象 |
四、json响应体断言
4.1、什么是 JSON 响应体
- JSON格式的响应体指的是HTTP响应中的消息体(message body),它是以JSON格式编码的数据。
4.2、断言 JSON 格式响应体使用场景
4.3、断言 JSON 格式响应体
def test_res_json():
r = requests.get("https://httpbin.ceshiren.com/get")
assert r.status_code == 200
assert r.json()["url"] == "https://httpbin.ceshiren.com/get"
4.4、若碰到复杂断言应该如何处理?
- 多层嵌套的数据提取与断言: JSONPath
- 整体结构响应断言: JSONSchema
- 自行编写解析算法