【接口自动化测试实战】python+requests+Pytest+Excel+Allure(持续更新中。。。)

阅读目录

前言

不知道该如何设计自动化框架? 不知道怎么搭建持续集成环境? 下面带大家一起来盘盘它?走起 ~~

【接口自动化测试实战】python+requests+Pytest+Excel+Allure(持续更新中。。。)

一、先来了解下pytest

  • pytest 是非常成熟全功能的Python测试框架。
  • 可以覆盖unittest能做到的各种各样场景,比如:单元测试、web测试、app测试、接口测试等等。
  • pytest是个插件化的平台,它比unittest更强大也在此。目前已经有大量第三方插件扩展和增强它的功能
  • 你可以根据自己需求,定制化开发出自己的插件
  • 可以很好的和CI工具进行结合

pytest与unittest区别:

带你清楚了解pytest和unittest: 【自动化测试框架】pytest和unitttest你知道多少?区别在哪?该用哪个? – 三叔测试笔记 – 博客园

为什么选择pytest而不是unittest,相信大家通过上面的文章心里面已经有了答案。 任何框架、工具的出现都是为了解决某些问题,pytest的操作简单,功能强大也致使它成为主流。

二、需要具备的基础知识

python基础

待更新

liunx基础

待更新

git基础

待更新

三、开发环境准备

python/pycharm安装及环境配置

【基础】python环境搭建及配置—>【关注微信公众号:三叔测试笔记,及时获取干货】 – 三叔测试笔记 – 博客园

java安装及环境配置

【基础】java环境搭建及配置—>【关注微信公众号:三叔测试笔记,及时获取干货】 – 三叔测试笔记 – 博客园

linux环境

待更新

tomcat部署及配置

待更新

jenkins安装配置

待更新

git安装配置

待更新

Allure安装配置

  • 百度网盘下载地址:

链接:百度网盘 请输入提取码 提取码:ss11

  • 配置环境变量

【接口自动化测试实战】python+requests+Pytest+Excel+Allure(持续更新中。。。)
  • 验证Allure,如下图说明配置成功

【接口自动化测试实战】python+requests+Pytest+Excel+Allure(持续更新中。。。)

需要的依赖包安装

pip安装一下依赖包(例如: pip install pytest)

allure-pytest==2.8.36  
allure-python-commons==2.8.36  
configparser==5.0.0  
PyMySQL==0.9.3  
pytest==5.4.3  
pytest-html==2.1.1  
pytest-metadata==1.11.0  
regex==2020.11.13  
requests==2.25.1  
requests-toolbelt==0.9.1  
xlrd==1.2.0  
xlwt==1.3.0  
pyDes==2.0.1  
ruamel.yaml==0.17.10

快速安装技巧 将上面内容存入一个txt文件中,直接pip install 安装 pip install -r requirements.txt

【接口自动化测试实战】python+requests+Pytest+Excel+Allure(持续更新中。。。)

四、接口自动化实战(设计项目目录)

目录结构

├── base // 工具 │ ├── api_requests.py // requests请求封装 │ ├── asert_contrast.py // 断言封装 │ ├── log.py // 日志封装 │ ├── public.py // 常用路径等操作封装 │ └── read_data.py // 读取文件数据 ├── config // 配置文件 │ └── config.yml // 环境配置 ├── data // 文档 │ ├── └── demo.yml // 测试数据 │ └── … ├── log // 日志文件 ├── page // api方法封装 │ ├── └── demo.py // 用例方法 │ └── login.py // 登录封装 ├── report // 测试报告生成路径 ├── test_case // 用例脚本 │ ├── └── test_demo.py // excel用例脚本编写 │ └── … ├── excel_data // excel用例 │ ├── demo.xlsx // excel用例文件 │ └── … ├── conftest.py // pytest自定义命令行参数,切换环境 ├── pytest.ini // pytest配置文件 ├── README.md // 帮助文档 ├── requirements.txt // 依赖包 ├── run_all.py // 调试执行 └── 架构设计.xmind //导图

五、方法封装

== 自动化测试框架(以下源码请联系作者获取)==

封装requests请求方法

导入requests包,使用requests.request()方法,进行封装请求方法到ApiRequest类中:

注:此封装方法需要根据请求的方式(GET/POST),来传入封装的方法中进行请求。

【接口自动化测试实战】python+requests+Pytest+Excel+Allure(持续更新中。。。)

封装公共方法

封装获取文件路径的公共方法,便于拼接文件路径

【接口自动化测试实战】python+requests+Pytest+Excel+Allure(持续更新中。。。)

封装读取文件方法

  • yaml文件读取封装,需要传入文件参数来获取文件数据

【接口自动化测试实战】python+requests+Pytest+Excel+Allure(持续更新中。。。)
  • excel文件读取封装,也需要传入文件路径,直接继承ReadYaml即可

【接口自动化测试实战】python+requests+Pytest+Excel+Allure(持续更新中。。。)

调试成功打印数据:

【接口自动化测试实战】python+requests+Pytest+Excel+Allure(持续更新中。。。)

断言封装

传入接口相应的数据及预期结果,进行判断

【接口自动化测试实战】python+requests+Pytest+Excel+Allure(持续更新中。。。)

封装log日志方法

日志封装中需要传入日志项目名及日志等级,以便灵活调整日志信息

【接口自动化测试实战】python+requests+Pytest+Excel+Allure(持续更新中。。。)

调试成功打印数据:

【接口自动化测试实战】python+requests+Pytest+Excel+Allure(持续更新中。。。)

数据文件(配置文件/测试用例数据文件)

  • config环境配置文件

【接口自动化测试实战】python+requests+Pytest+Excel+Allure(持续更新中。。。)
  • yaml测试数据文件

【接口自动化测试实战】python+requests+Pytest+Excel+Allure(持续更新中。。。)
  • excel测试数据文件

【接口自动化测试实战】python+requests+Pytest+Excel+Allure(持续更新中。。。)

六、编写自动化用例脚本

test_case目录中新建用例文件,并编写用例

导入相应包,编写用例类及测试用例

【接口自动化测试实战】python+requests+Pytest+Excel+Allure(持续更新中。。。)

运行调试自动化脚本

【接口自动化测试实战】python+requests+Pytest+Excel+Allure(持续更新中。。。)

使用Allure输出自动化测试报告

【接口自动化测试实战】python+requests+Pytest+Excel+Allure(持续更新中。。。)

【接口自动化测试实战】python+requests+Pytest+Excel+Allure(持续更新中。。。)

七、持续集成

部署jenkins环境

待更新

配置jenkins并安装必要插件

待更新

上传代码到git

待更新

jenkins配置自动化项目

待更新

运行调试项目

待更新

优化自动化项目

待更新

八、其他自动化框架

无需写代码的自动化框架

接口自动化框架 接口自动化测试框架【windows版】: jmeter + ant + jenkins 待更新

接口自动化测试框架【linux版】: jmeter + ant + jenkins 待更新

接口自动化测试框架: jmeter + maven + jenkins 待更新

UI自动化框架 UI自动化框架RobotFramework+Selenium2Library库 待更新

要写代码的接口自动化框架

接口自动化框架 接口自动化测试框架:python+request+pytest+allure 待更新

接口自动化测试框架:python+request+unittest+allure 待更新

接口自动化测试框架:java+httpclient+testng+allure 待更新

UI自动化框架 UI自动化框架:python+selenium/appium+pytest+allure 待更新

UI自动化框架:python+selenium/appium+unittest+allure 待更新

============================= 提升自己 ==========================
微信公众号获取更多干货:sanshucs

咨询交流、进群,请加微信,备注来意:sanshu1318 (←点击获取二维码)
【自动化测试实战】python+requests+Pytest+Excel+Allure,测试都在学的热门技术:
【接口自动化测试实战】python+requests+Pytest+Excel+Allure – 三叔测试笔记 – 博客园
【热门测试技术,建议收藏备用】项目实战、简历、笔试题、面试题、职业规划:
【热门测试技术,建议收藏备用】项目实战、简历、笔试题、面试题、职业规划 – 三叔测试笔记 – 博客园
学习路线+测试实用干货精选汇总:
学习路线+测试实用干货精选汇总(持续更新中。。。) – 三叔测试笔记 – 博客园
声明:如有侵权,请联系删除。
============================= 升职加薪 ==========================
更多干货,正在挤时间不断更新中,敬请关注+期待。

Original: https://blog.csdn.net/qq_34992640/article/details/123157563
Author: 三叔测试笔记
Title: 【接口自动化测试实战】python+requests+Pytest+Excel+Allure(持续更新中。。。)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/772362/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球