Python-requests接口自动化测试

requests 是一个很实用的 Python HTTP 客户端库,编写爬虫和测试服务器响应数据时经常会用到,
Requests Python 语言的第三方的库,专门用于发送 HTTP 请求
 
 
安装 pip install requests
 
GET 无参请求
 
requests.get('http://www.baidu.com')
 
GET 传参
 
payload = {'key1': 'value1', 'key2': 'value2', 'key3': None}
r = requests.get('http://www.baidu.com ', params=payload)
 
post 请求
 
payload = {'key1': 'value1', 'key2': 'value2'}
r = requests.post("http://httpbin.org/post", data=payload)
 
 
Requests 响应
 
r.status_code 响应状态码
r.heards 响应头
r.cookies 响应 cookies
r.text 响应文本
r. encoding 当前编码
r. content 以字节形式(二进制)返回
 
最常用的是根据响应状态码判断接口是否连通,经常用于做接口中断言判断
 
 
:添加等待时间
requests.get(url,timeout=1)  # 超过等待时间则报错
:添加请求头信息
requests.get(url,headers=headers)  # 设置请求头
:添加文件
requests.post(url, files=files)  # 添加文件
 
 
requests+pytest+allure-单元测试
 
流程:
读取文件中的数据
requests拿到数据请求接口返回状态码
通过断言验证返回状态码和200对比
生成allure的测试报告
 
 
读取CSV文件+request 数据请求
 
 
1.
import csv
class ReadCsv():
    def readCsv(self):
        item = []
        rr = csv.reader(open("../dataDemo/0607.csv","r"))
        for csv_i in rr:
            item.append(csv_i)
        item=item[1:]
        return item
cs=ReadCsv()
print(cs.readCsv())
2.
import requests
from readDemo.readCsv import ReadCsv

csvv = ReadCsv()
lists = csvv.readCsv()

class RequsetcsvClass():
    def requestcsv_method(self):
        item = []
        for csv_i in lists:
            if csv_i[2] == "get":
                rr = requests.get(csv_i[0], params=csv_i[1])
                item.append(rr.status_code)
            else:
                rr = requests.get(csv_i[0], data=csv_i[1])
                item.append(rr.status_code)
        return item

rr=RequsetcsvClass()
rr.requestcsv_method()
 
3.
import pytest,allure,os
from testDemo.test_request import RequsetcsvClass
csvv=RequsetcsvClass()
rr=csvv.requestcsv_method()
class Testcsv():
    def test01(self):
        for csv_i in rr:
            assert csv_i==200
if __name__ == '__main__':
    pytest.main(['--alluredir', 'report/result', 'test_allure.py'])
    split = 'allure ' + 'generate ' + './report/result ' + '-o ' + './report/html ' + '--clean'
    os.system(split)
 
 
 
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值