Python-接口自动化流程(pytest)

一、实现方法

        python+requests+pytest框架来实现

二、接口自动化流程

  • 确定业务范围,哪些业务功能的接口可以做自动化
  • 一般来说,比较稳定的业务适合来做接口自动化
  • 确定自动化测试框架
  • 这里使用pytest框架
  • 准备数据—准备接口用例数据
  • 编写接口自动化脚本
  • 三、搭建接口自动化测试环境

    1、安装python3.x,配置环境变量

    2、安装PyCharm(python的IDE工具)

    3、搭建测试环境

    4、安装测试库

            requests:用来模拟接口请求,request库官方使用说明文档

            pytest: 测试框架:01-pytest了解

            xlrd,xlwt、openpyxl:对execl,csv文件操作的库

            pymysql、clickhouse_driver:连接mysql、ck

            configparser:读取配置文件

            logging、os、time、…

    5、确定测试范围

    6、准备测试用例数据

    7、编写测试脚本

    四、requests库提供的主要方法

    方法

    说明

    requests.request()

    构造一个请求,支撑一下各方法的基础方法

    requests.get()

    获取HTML网页的主要方法

    requests.head()

    获取网页头信息的方法

    requests.post()

    向HTML网页提交POST请求的方法

    requests.put()

    向HTML网页提交PUT请求的方法

    requests.patch()

    向HTML网页提交局部修改请求

    requests.delete()

    向HTML页面提交删除请求

    五、pytest使用准则:

  • 测试文件以test_开头(以_test结尾也可以)
  • 测试类以Test开头,并且不能带有 init 方法
  • 测试函数以test_开头
  • 断言使用基本的assert
  • 六、项目架构

    ProjectName/
    
    ├── commom # 封装公共方法
    │ ├── Email.py # 封装邮件接口
    │ ├── Log.py  # 封装日志
    │ ├── MysqlConn.py # 封装链接mysql数据库
    │ └── Requests.py # 封装模拟发送请求
    
    ├── config # 配置文件
    │ ├── config.ini
    │ └── config.py  # 封装读取配置文件方法
    
    ├── data_provider # 获取接口数据
    │ ├── commom_api  # 被测试系统使用的公共api目录
    │ │ └── time.py
    │ ├── 其他不同api目录
    
    ├── data_source # 源数据(这里可以写获取接口源数据的方法)
    
    ├── Log # 运行日志
    │ ├── err.log
    │ └── log.log
    
    ├── Params # 测试用例数据
    │ ├── excel_test_file # excel类型的测试用例文件
    │ │ ├── 测试用例1.txt
    │ ├── params.py  # 其他类型的测试用例数据
    │ ├── tools.py  # 封装获取测试用例的方法
    │ └── yaml_test_file  # yaml类型的测试用例文件
    │ │ └──  test1.yaml 
    
    ├── report_file # 测试报告
    │ └── 2022-03-31-test.html
    
    ├── run.py # 运行测试主方法
    
    └── test_case # 测试方法
       ├── common_api_test. # 公共接口的测试方法
    │ │ └── time_test.py
            

    七、样例

                    01-pytest了解

            先占个位置,我后续会补上的!!!一年内不补上不是中国人!!
    

    来源:西宏柿王多鱼

    物联沃分享整理
    物联沃-IOTWORD物联网 » Python-接口自动化流程(pytest)

    发表评论