首页 > 技术文章 > 使用python进行接口自动化测试,批量执行测试用例

zdf-blog 2021-01-24 17:44 原文

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

分析一下接口信息:

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

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

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

返回结果:info,wid等

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

 

 1 import requests
 2 
 3 def query_whether(url, citys):
 4     print("开始执行测试》》》")
 5     i = 1
 6     for c in citys:
 7      #把每次得到的城市信息分别放到data这个字典里
 8         data = {"city": c, "key": my_key}
 9         result = requests.get(url, data)
10         if result.status_code == 200 and result.text.find(c):
11             # 判断返回结果是否包含“查询成功!”字符串和查询城市字符串,
12             # find函数:查找某个字符串是否包含在一个字符串里,返回查询到次数int类   型,如果没有查到返回-1
13             if result.text.find("查询成功!") != -1 and result.text.find(c) != -1:
14                 print("第{}个城市:{}天气查询成功!".format(i, c))
15             else:
16                 print("检查点失败, {}城市天气查询失败".format(c))
17             i += 1
18         else:
19             print("响应码不是200,执行错误!")
20     print("函数执行完毕。。。")
21 
22 
23 def readfile(fname):
24   # 读取测试数据(保存在.txt文件里) ,返回城市列表
25     city_list = []
26     filename = open(fname, "r")
27     for c in filename.readlines():
28         # 去掉换行符
29         r1 = c.strip("\n")
30         city_list.append(r1)
31     filename.close()
32     return city_list
33 
34 
35 if __name__ == "__main__":
36     citys = readfile("./citys.txt")
37     my_key = "514d0724b1dafad26eee30327939XXXX"  # 申请接口时给的key
38     url = "http://apis.juhe.cn/simpleWeather/query"
39     query_whether(url, citys)
测试数据,保存在与程序的相同目录下

 

 

推荐阅读