接口自动化测试框架【python+requests+pytest+excel+allure+jenkins】

一.在整个框架中需要用到哪些东西?

1.python环境安装

https://www.python.org/downloads/windows/
下载解压后直接安装,选择 Add python to path

2.JAVA环境配置

安装包下载地址:https://www.oracle.com/java/technologies/downloads/
环境变量设置参数如下:
● 变量名:JAVA_HOME
● 变量值:C:\Program Files\Java\jdk-22 java环境的安装路径
● 变量名:CLASSPATH
● 变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
● 变量名:Path
● 变量值:%JAVA_HOME%\bin %JAVA_HOME%\jre\bin

3.requests库

requests是一个python的HTTP库,用于发送HTTP请求,支持HTTP认证、会话、上传文件、json处理等功能。

  • 安装:pip install requests
  • 发送get请求
    import requests
    response=requests.get("https://www.baidu.com")
  • 发送post请求
    import requests
    url="https://www.baidu.com"
    data={"username":"test001","password":"AAAAAA"}
    response=requests.post(url=url,data=data)
  • 获取json响应
    import requests
    response=requests.get("https://www.baidu.com")
    json_data=response.json()
  • 上传文件
    import resuqets
    url="https://www.baidu.com"
    files={"file":open("example.txt","rb")}
    response=requests.post(url=url,file=files)

4.pytest库

5.pycharm安装

6.Allure安装配置

allure安装:https://github.com/allure-framework/allure2/releases
下载解压,将路径添加到环境变量中,例:D:\install\allure-2.27.0\allure-2.27.0\bin

在cmd中输入allure --version ,出现版本号既安装成功

7.jenkins安装配置(后续更新)

8.Git安装配置(后续更新)

二.框架需要安装的依赖包

https://www.cnblogs.com/tyl-bok/p/18194298

三.项目目录结构

四.方法封装

封装requests的请求方法

导入requests库(import requests),使用本身的get和post方法进行二次封装,放在关键字参数api_keyword.py的ApiKeys类中

封装从响应结果中提取数据的方法

从响应中提取数据需要使用json path进行提取,导入jsonpath(import json/import jsonpath)

  • jsonpath用来提取数据,jsonpath.jsonpath(参数1:响应数据,参数2:需要提取的数据(json path表达式)),返回的数据类型是列表

  • json 用来转换数据格式(如果响应数据是字典格式的字符串,要转换为json格式),json.loads(响应数据)

注:这个方法一次只能提取一个数据

封装从数据库提取数据的方法

1.连接数据库--------------->2.执行sql语句,获取结果(元组格式)

封装Excel文件方法(安装pip install openpyxl)

自动化测试用例相关信息都是放在Excel文件中,包括用例名称、用例标题、请求方法、请求参数、预期结果、实际结果、校验字段等,所以需要将Excel文件的数据读取出来进行测试

读取Excel文件,导入import openpyxl,封装读取和写入Excel文件的方法,放在common包的FileExcelRead.py中

封装yaml文件方法(安装 pip install pyyaml)

读取yaml文件,导入import yaml,封装读取和写入yaml文件的方法,放在common包的FileYamlRead.py中

封装接口加密方法AES

部分接口是加密接口,如果不对数据进行加密,就会报错

posted @ 2024-05-16 10:16  cherish-github123  阅读(10)  评论(0编辑  收藏  举报