接口测试

1get/post请求方式

导包,构造接口地址,请求参数,发送请求,得到结果并进行判断

2unittest单元测试框架

利用assert断言

3数据与代码分离

利用第三方库xlrd,Excel表,表中数字需要改为文本形式

数据驱动ddt

import requests
url ="http://v.juhe.cn/weather/ip"
para = {"ip":"58.215.185.154","key":"221ec2c9d854d2859310ea808cb760fd"}
# para = {"ip":"58.215.185","key":"221ec2c9d854d2859310ea808cd"}
# 发送post请求
r = requests.post(url,data=para)
# 获取json数据
res = r.json()
print(res)
# print(res["reason"])
print(res["error_code"])
import requests
import re
#接口地址  参数关联接口请求  构造接口地址,请求参数,发送接口请求requests.session(),使用正则匹配接口响应数据内容
url2 = "http://192.168.103.106:1080/webtours/nav.pl?in=home"
s = requests.session()# 为了保持和下一个接口建立相同的连接通道
res = s.get(url2)
# print(res.text)
usersession = re.findall(r'name=userSession value=(.+?)>',res.text)
print(usersession)
# para2 ={"in":"home"}
# 接口地址
url ="http://192.168.103.106:1080/webtours/login.pl"
para ={"userSession":usersession[0],"username":"jojo","password":"bean","login.x":"54","login.y":"11","login":"Login","JSFormSubmit":"off"}
r = s.post(url,data=para)
# 发送post请求
# r = requests.post(url,data=para)
print(r.text)
import requests
import unittest
class Test_Order(unittest.TestCase):
    def test01(self):
        url ="http://www.kuaidi.com/index-ajaxselectcourierinfo-1202247993797-yunda.html"
        r = requests.get(url)
        res = r.json()
        # print(res)

        self.assertEqual(res["company"],"韵达快递")
        # 判断是否签收
        print(res["data"])
        print(res["data"][0])
        print(res["data"][0]["context"])
        self.assertIn("已签收",res["data"][0]["context"])

if __name__ == '__main__':
    unittest.main()
import xlrd
#打开excel
# r=xlrd.open_workbook('../Data/data1.xlsx')
# #定位sheet表
# s=r.sheet_by_name('Sheet1')
# a=s.nrows  #统计多少行
# b=s.ncols     #统计多少列
# c=s.row_values(0)  #获取第一行数据
# print(a,b,c)

class Read_ex():
    def read_excel(self):
        r=xlrd.open_workbook('../Data/data1.xlsx')  #打开excel表
        s=r.sheet_by_name('Sheet1')        #找到sheet页
        a=s.nrows   #获取总行数总列数
        b=s.ncols
        l=[]
        key=s.row_values(0)  # 这是第一行数据,作为字典的key值
        if a<=1:
            print('no data')
        else:
            j=1   
            for i in range(a-1):
                d={}
                values=s.row_values(j)
                for x in range(b):
                    d[key[x]]=values[x]
                j+=1
                l.append(d)
            return l

if __name__=='__main__':
    a=Read_ex()
    res=a.read_excel()
    print(res)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值