今天想试试把所有用例写入excel通过读取excel中的数据进行接口自动化,写了一点发现目前的脚本局限性还是很大,比如测试接口的token要传入后续接口,这就使得我在循环的时候,必须将正确的登录参数写在最后,否则无法获得最新的token,还有其它这个目前很难参数化,先记录下来,后续如果有更好的再来更新
一、准备一个表格,输入你的测试用例
此处上图例
二、安装 xlrd模块
xlrd用来读取excel文件,具体安装可百度
三、代码
import xlrd
import requests
import json
excel_content = xlrd.open_workbook("D:\\测试项目\\接口测试自动化练习\\test.xlsx") #打开文件, 返回一个操作对象
ret1 = excel_content.sheets()[0] #获取sheet表, 这里是获取下标为0的工作表
row_num = ret1.nrows #获取有效最大行数
i=1
while i<row_num: #按行循环
url = ret1.cell(i, 1).value #依次获得url,请求方式,参数
method=ret1.cell(i, 2).value
payload =ret1.cell(i, 3).value
url="https://域名"+url
headers = {'Content-Type': 'application/json'}
res=requests.request(method=method, url=url, headers=headers, data=payload )
print(res.text) # 输出响应文本
if i==2:
token=res.json().get('data') # 这里因为后续接口使用登录接口返回的data作为token值
print(token)
headers = {'Content-Type': 'application/json', 'X-Token': token}
i=i+1
|