接口测试—Python+requests

1)requests之get请求
import requests
url=‘http://v.juhe.cn/weather/index’ #接口地址
para={‘cityname’:‘广州’,‘key’:‘22dc76ee…’} #参数信息
r=request.get(url,params=para)
print(r.status_code) #查询成功代码——200
print(r.json()) #json返回
还可断言:
self.assertEqual(r[‘reason’],‘查询成功’)

2)post请求
将get换成post请求即可

3)参数关联
requests.session() #正则表达式提取,为了保持和下一个接口建立相同的连接通道
usersession=re.findall(r’name=userSession value=(.+?)>’,res.text)
导入re模块,在中找OAA,在res.text当中
参数关联是由于usersession的参数中的值是变化的且延用上一个接口的相同参数值

4)读取excel表
表格存放在Data目录下,文件名data.xlsx
文件名data.xlsx

import  xlrd

class Read_Ex():
    def read_excel(self):
        #打开excel表
        book = xlrd.open_workbook("../Data/data.xlsx")
        #找到sheet页
        table = book.sheet_by_name("Sheet1")
        #获取总行数总列数
        row_Num = table.nrows
        col_Num = table.ncols

        s =[]
        key =table.row_values(0)# 这是第一行数据,作为字典的key值

        if row_Num <= 1:
            print("没数据")
        else:
            for j in range(row_Num-1):
                d ={}
                values = table.row_values(j+1)
                for x in range(col_Num):
                    # print(values)
                    d[key[x]]=values[x]
                s.append(d)
            return s

if __name__ == '__main__':
    r = Read_Ex()
    s=r.read_excel()
    print(s)

输出结果:
[{‘a’: 1.0, ‘b’: 2.0, ‘c’: 5.0},
{‘a’: 1.0, ‘b’: 954.0, ‘c’: 4.0},
{‘a’: 6.0, ‘b’: 9.0, ‘c’: 8.0},
{‘a’: 8.0, ‘b’: 88.0, ‘c’: 9.0}]

在断言时,调用上面模块,如下即可

s=Read_Ex().read_excel()
for i in s:
     self.assertEqual(int(i['a'])+int(i['b']),int(i['c']))
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值