zoukankan      html  css  js  c++  java
  • requests + pytest + allure 结合使用并生成测试报告

    目录

      1. 流程

      2. requests 读取 CSV 文件

      3. 使用requests 请求读CSV的结果并放到列表中

      4. 写测试用例并生成测试报告

      5. requests 读取 excel 文件

      6. 使用requests 请求读取到excel

      7. 编写测试用例并生成测试报告

    1. 流程

      读取文件中的数据

      requests 拿到数据请求接口返回状态码

      通过断言验证返回状态码和200对比

      生成allure的测试报告

    2. requests 读取CSV文件

    import csv
    class ReadCsv():
        def readCsv(self):
            item = []
            rr = csv.reader(open("../dataDemo/123.csv"))
            for csv_i in rr:
                item.append(csv_i)
            return item

    1)新建dataDemo 目录与 requestsDemo 目录同级

    2)在本地新建一个excel 表并填入数据

    3)另存为 csv 文件

    4)将csv 文件放到 dataDemo 目录下

    5)新建readcsv.py 并写入代码

    6)新建readcsv.py 并写入代码

    7)运行看效果

    3. 使用 requests 请求读 csv 的结果并放到列表中

    在requestsDemo 目录下新建 requestscsv.py 并写入代码

    4. 写测试用例并生成测试报告

    1)新建testDemo 目录并在目录下新建test_01.py

    2)在test_01.py中导入requestscsv并实例化

    3)写测试用例

    4)运行生成测试报告

    5. requests 读取 excel 文件

    前提:

    pip install openpyxl

    from openpyxl import load_workbook
    class UseExcel():
        def get_TestExcel(self):
            # 打开表
            workbook = load_workbook('D:installpythonpythonTest_allureDataDemo/test1.xlsx')
            # 定位表单
            sheet = workbook['Sheet1']
            print(sheet.max_row)     #3 行
            print(sheet.max_column)  #3 列
            test_data = []#把所有行的数据放到列表中
            for i in range(2,sheet.max_row+1):
                sub_data = {}#把每行的数据放到字典中
                for j in range(1,sheet.max_column+1):
                    sub_data[sheet.cell(1,j).value] = sheet.cell(i,j).value
                test_data.append(sub_data)#拼接每行单元格的数据
            return test_data
    t = UseExcel()
    f = t.get_TestExcel()
    print(f)

    1)在requestsDemo目录下新建readexcel.py并写入代码

    2)将excel的路径粘贴到load_workbook

    3)运行看结果

    4)将 改为 /

    你会发现依然报错

    5)在路径前加 r

    6. 使用requests 请求读到 excel

    import requests
    from readDemo.readexcel import UseExcel
    class Use_Requestexcel():
        def qualification_add(self):
            t = UseExcel()
            f = t.get_TestExcel()
            item =[]
            for excel_i in f:
                if excel_i["method"] == "get":
                    rr = requests.get(excel_i["url"],params=excel_i["params"])
                    item.append(rr.status_code)
                else:
                    rr = requests.post(excel_i["url"],data=excel_i["params"])
                    item.append(rr.status_code)
            return item
    if __name__=="__main__":
        c = Use_Requestexcel().qualification_add()
        print(c)

    1)在requestsDemo目录下新建一个requestsexcel.py

    2)在requestsDemo.py中写入代码并运行

    7. 编写测试用例并生成测试报告

    1)在testDemo目录下新建test_02.py并导入读取的excel

    2)运行生成测试报告

  • 相关阅读:
    (一) kinect概述
    (五)摇杆/按钮/触摸板
    (四)Trigger
    (三)快速添加touch事件
    (二)简单触控
    Java程序设计当堂测试 9.20
    Java程序设计当堂测试感受
    暑假生活第八周总结
    暑假生活第七周总结
    暑假生活第六周总结
  • 原文地址:https://www.cnblogs.com/xinzaiyuan/p/14626197.html
Copyright © 2011-2022 走看看