'''
使用python-requests 包进行接口测试
1、构造参数
2、发送请求
3、校验结果
'''
#加载包
import requests
#百度搜索的接口,搜索的内容为requests
#url = "http://www.baidu.com/s?wd=requests"
#发送请求,将服务器返回的结果放到变量r中
#r = requests.get(url)
#打印文本格式的响应体
#print(r.text)
#对结果进行断言,判断关键字在不在结果中
#assert "Requests: 让 HTTP 服务人类 — Requests 2.18.1 文档" in r.text
#金融项目注册接口的测试
#get请求的参数拼接到url的后面,
url = "http://192.168.2.36:8089/futureloan/mvc/api/member/register?mobilephone=12345&pwd=12345"
r = requests.get(url)
print(r.text)
print(r.json()) #如果相应体是json格式的,使用r.json()
print(r.json()['code'])
assert r.json()['code'] == "20108"
assert r.json()['msg'] == "密码长度必须为6~18"
#get请求的参数,使用params传递
url = "http://192.168.2.36:8089/futureloan/mvc/api/member/register"
cs = {
"mobilephone":"18012345678",
"pwd":"12345",
"regname":"hello"
}
r = requests.get(url,params=cs)
print(r.text)
assert r.json()['code'] == "20108"
assert r.json()['msg'] == "密码长度必须为6~18"
print("状态码",r.status_code)
print("状态原因",r.reason)
print("响应头",r.headers)
print("cookies",r.cookies)
print("文本格式的响应体",r.text)
print("请求头",r.request.headers)
#新知天气查询天气的接口
url = "https://api.seniverse.com/v3/weather/now.json?key=Sh-LsrOsCyo4vp8Tp&location=xian"
r = requests.get(url)
print(r.json())
#西安
print(r.json()['results'][0]['location']['name'],end='当前温度:')
#温度
print(r.json()['results'][0]['now']['temperature'])
#分割线
print("*"*50)
#获取用户列表
url = "http://192.168.2.36:8089/futureloan/mvc/api/member/list"
r = requests.get(url)
print(r.json())
print(r.request.headers) #‘’
#分割线
print("*" * 50)
hds = {
"User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.80 Safari/537.36 QQBrowser/9.3"
}
r = requests.get(url, headers=hds)
print(r.json())
print(r.request.headers)
'''
用requests 发送post请求
1.data传参,传的是表单格式的参数
2.json传参,传的是json格式的参数
具体用data还是json传参要看接口是如何实现的
'''
|