python接口测试-认识GET请求
前边用工具也实现了接口自动化,但是后来很多的时候维护成本有点高。而且灵活上还是有所欠缺的。
于是,自己开始摸索学习敲码。应该有很多不对的地方或者可以优化的望各位大神勿喷,同时欢迎各位大神评论区发表自己的观点。
# GET请求有参数时的请求写法。
import requests
import json
host = 'http://***.org/' #请求域名 (可以换成其他所需请求的域名)
method = 'get' #请求的地址
url = ''.join([host,method]) #将请求域名与地址拼接,http://***.org/get
params = {"show_env":1} #请求地址带的参数。没有后接参数时此行不需要,有多个请求参数时直接在里边添加
r = requests.get(url,params=params) #将请求的参数带人到请求地址中,然后向服务器发送请求。没有后接参数时就将,params=params删除,有多个时直接添加,用英文逗号隔开。
print(r.url) #获取请求的URL
print(r.status_code,r.reason) #获取响应的状态码,状态码的原因
print(r.headers) #获取请求的响应头
print(r.text) #获取响应的body,以文本形式展示
print(r.content) #以图片文件形式展示
print(type(r.content)) #查看类型
print(r.request.headers) #获取请求的请求头
print(r.request.url) #获取请求的URL
print(r.request.method) #获取请求的参数
response = r.json()
print(response["headers"]) #获取响应结果中的headers值,并以字典的形式展示。
print(response["headers"]["Host"]) #获取响应结果中的headers中的host值,并以字典的形式展示,常用于断言来判断结果
print(eval(r.text)["headers"]["Host"]) #使用eval函数将以text形式响应的结果中的headers中的host的值以字典的形式展示,用的较多。
文中每一行的意思全部标注了(没标注的除外)以及有无参数的区别。
输出方式很多,不同的输出方式的你区别备注已写出。
才开始学,都是很基础的,望勿笑。
学如逆海行舟,不进则退。