使用python进行接口自动化测试,批量执行测试用例

时间:2023-03-09 06:17:46
使用python进行接口自动化测试,批量执行测试用例

工作中,使用python的requests库进行接口自动化测试是一个比较不错的选择,今天就以某网站的免费接口为例,展示以get请求进行批量执行测试用例。话不多说直接开讲

分析一下接口信息,

请求地址:http://apis.juhe.cn/simpleWeather/query,

请求参数:city和key,都是必传

请求方式:get或post,以下以get为例

返回结果:info,wid等

注意:该网站免费接口每天有请求次数限制,在调试的时候注意下不要超过规定次数,不然只能等到第二天才能使用了。

使用python进行接口自动化测试,批量执行测试用例

import requests

def query_whether(url, citys):
print("开始执行测试》》》")
i = 1
for c in citys:
     #把每次得到的城市信息分别放到data这个字典里
data = {"city": c, "key": my_key}
result = requests.get(url, data)
if result.status_code == 200 and result.text.find(c):
# 判断返回结果是否包含“查询成功!”字符串和查询城市字符串,
# find函数:查找某个字符串是否包含在一个字符串里,返回查询到次数int类型,如果没有查到返回-1
if result.text.find("查询成功!") != -1 and result.text.find(c) != -1:
print("第{}个城市:{}天气查询成功!".format(i, c))
else:
print("检查点失败, {}城市天气查询失败".format(c))
i += 1
else:
print("响应码不是200,执行错误!")
print("函数执行完毕。。。")

def readfile(fname):
  # 读取测试数据(保存在.txt文件里) ,返回城市列表
city_list = []
filename = open(fname, "r")
for c in filename.readlines():
# 去掉换行符
r1 = c.strip("\n")
city_list.append(r1)
filename.close()
return city_list

if __name__ == "__main__":
citys = readfile("./citys.txt")
my_key = "514d0724b1dafad26eee30327939XXXX" # 申请接口时给的key
url = "http://apis.juhe.cn/simpleWeather/query"
query_whether(url, citys)

测试数据,保存在与程序的相同目录下

使用python进行接口自动化测试,批量执行测试用例