python post接口测试第一个用例日记

如下是我自己公司的一个请求,学习过程顺便记录下,都是白话语言,不那么专业,不喜勿喷!

首先看下图,post请求一般需要填写参数url, data(一般是表格类型的参数,如我们智联驾驶APP登录的参数),json(一般就是json格式的参数,如我们autogo云平台登录的参数),**kwags(一般是动态参数,有的需要填写,有的接口不需要填写,一般是headers参数)


下图解释dumps函数,json.dumps()可以将字典转化成字符串格式

dumps可以将字典转化成字符串,一般接口返回的都是json格式,我们可以将它转化成字符串再一 一分析和断言

转化过程中,用倒dumps函数,其里边的ensure_ascii=False(即输出格式不为ascii语言), 可以将ASCII语言转化成中文

indent可以将一整个json字符转变为整个的格式输出来



如下是实操,以我们PC平台登录为例说明

#后边需要用到request库

import requests
#后边需要用到request库
import json(后边需要用到json库# 我们的请求参数是字典格式,但是python post请求需要的是json格式的,所以请求过程中需要将字典转化为json字符串data ={"email":"xxx","password":"xxx"} 

headers = {
'Connection': 'keep-alive',
'Content-type': 'application/json'
}

r = requests.post(
url='http://xxxxx',
data=json.dumps(data),
#dump可以将字典转化为字符串
headers=headers,
timeout=5
#timeout主要是限制请求响应时间,比如此处设置的5,当实际请求大于5S时候,就会报错
)

print r.status_code

print r.text
print r.json()

text = r.json()

print (json.dumps(text,indent=True,ensure_ascii=False))


执行结果如下



超时时候,报错如下,实际程序是没错的,只是超时了
 

猜你喜欢

转载自www.cnblogs.com/merry-0131/p/10371753.html