使用库
requests,json,pandas
pandas读取excel
filepath = ''
#1.读取excel
data = pd.read_excel(filepath)
n_data = data.ix[[i],['url','header','param']].values
url = str(n_data[0][0])
header = json.dumps(json.loads(n_data[0][1]))
param = json.dumps(json.loads(n_data[0][2]))
在这里读取了第i行的3个数据,分别是请求地址,请求头和请求参数,有时还需要加上token的值,一般的测试用例中也回包含这3个数据,注意更换索引名即可。使用pandas读取到的是array类型的数据,需要进行一定的转换处理,才可递交到requests中使用。
requests发送POST请求
res = requests.post(url=url,data=param,headers=header)
if res.status_code == 200:
print("第%s个请求成功!" % (i + 1))
else:
print(res.status_code)
print("第%s个请求出错,请检查!" % (i + 1))
在读取数据的时候已经进行了json的加载,使用的时候直接post即可,同时通过status_code来判断请求是否成功。
模板
import json
import requests
import pandas as pd
#文件路径
filepath = ''
#1.读取文件
data = pd.read_excel(filepath)
#2.读取数据
for i in range(100):
n_data = data.ix[[i],['url','header','param']].values
url = str(n_data[0][0])
header = json.dumps(json.loads(n_data[0][1]))
param = json.dumps(json.loads(n_data[0][2]))
#3.构建POST请求
res = requests.post(url=url,data=param,headers=header)
if res.status_code == 200:
print("第%s个请求成功!" % (i + 1))
else:
print("第%s个请求出错,请检查!" % (i + 1))
使用以上代码即可实现读取excel文件进行接口的自动化测试,在此基础上使用logging库可以更好的对测试的结果进行记录,同时也可以使用pandas对原有的测试用例进行结果的自动化添加。