Python+Requests+Pytest+Excel+Allure 接口自动化测试项目实战【框架之间的对比】

这篇具有很好参考价值的文章主要介绍了Python+Requests+Pytest+Excel+Allure 接口自动化测试项目实战【框架之间的对比】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        --------UnitTest框架和PyTest框架的简单认识对比与项目实战--------

定义:

Unittest是Python标准库中自带的单元测试框架,Unittest有时候也被称为PyUnit,就像JUnit是Java语言的标准单元测试框架一样,Unittest则是Python语言的标准单元测试框架。

Pytest是Python的另一个第三方单元测试库。它的目的是让单元测试变得更容易,并且也能扩展到支持应用层面复杂的功能测试。

两者对比:

Python+Requests+Pytest+Excel+Allure 接口自动化测试项目实战【框架之间的对比】,软件测试,自动化测试,软件测试工程师,python,pytest,开发语言,软件测试,程序人生,自动化测试,功能测试

Pytest项目实战:

第一步、搭建项目框架(创建Gwyc_Api_Script_Pytest项目目录)

依次创建子目录如下:base:存放一些最底层的方法封装,协议,请求发送等。common:存放一些公共方法。config:存放配置文件。data:存放测试数据。 log:存放日志。report:存放报告。tests:存放用例。utils:存放公共类。 readme:用于说明文档。requirements.txt: 用于记录所有依赖包极其版本号,便于环境部署,可以通过pip命令自动生成和安装。

Python+Requests+Pytest+Excel+Allure 接口自动化测试项目实战【框架之间的对比】,软件测试,自动化测试,软件测试工程师,python,pytest,开发语言,软件测试,程序人生,自动化测试,功能测试

第二步、封装请求方法(base目录下面创建method.py)

封装有两种方法:

第一种:直接调用requests库下面的request方法,并将所有需要用到的参数定义进去,分为实参和行参,实参调用必须要传参,行参可给默认值,调用时可重新赋值也可以使用默认值。这种方法代码量少,不用做判断,request会自动根据传入的参数进行发送请求到服务器。

Python+Requests+Pytest+Excel+Allure 接口自动化测试项目实战【框架之间的对比】,软件测试,自动化测试,软件测试工程师,python,pytest,开发语言,软件测试,程序人生,自动化测试,功能测试

  第二种:分别对各个请求方式按函数的形式封装,分别调用requests进行发送请求。以get和post为例:put,delete请求按一样方法封装,各个请求方式封装完成以后再定义一个主方法,直接调用主方法会自动根据请求方式进行判断调用各个请求函数,这里也可以不对请求方式汇总封装,直接调用各个函数进行发送请求也是可以的。这种方法封装涉及代码量较多,也没有能够很好的用上requests库,因此推荐使用第一种方法。

Python+Requests+Pytest+Excel+Allure 接口自动化测试项目实战【框架之间的对比】,软件测试,自动化测试,软件测试工程师,python,pytest,开发语言,软件测试,程序人生,自动化测试,功能测试

Python+Requests+Pytest+Excel+Allure 接口自动化测试项目实战【框架之间的对比】,软件测试,自动化测试,软件测试工程师,python,pytest,开发语言,软件测试,程序人生,自动化测试,功能测试

第三步、封装读取文件的方法(common目录下创建public.py):

1、这里需要用到python的os库,os 库是Python标准库,包含几百个函数,常用的有路径操作、进程管理、环境参数等。

2、分别对获取目录和获取目录下文件进行了封装,直接调用并传入相应的参数即可使用。如下图:

Python+Requests+Pytest+Excel+Allure 接口自动化测试项目实战【框架之间的对比】,软件测试,自动化测试,软件测试工程师,python,pytest,开发语言,软件测试,程序人生,自动化测试,功能测试

第四步、准备数据(data目录下创建data.xlsx)

将接口写入excel表,将接口需要用到的字段都写进excel然后直接进行读取。

Python+Requests+Pytest+Excel+Allure 接口自动化测试项目实战【框架之间的对比】,软件测试,自动化测试,软件测试工程师,python,pytest,开发语言,软件测试,程序人生,自动化测试,功能测试

第五步、封装读取文件方法(utils目录下面创建operationExcel.py)

定义一个文件类分别再定义一个方法获取Sheet表,定义一个方法获取出所有数据存放进列表。

Python+Requests+Pytest+Excel+Allure 接口自动化测试项目实战【框架之间的对比】,软件测试,自动化测试,软件测试工程师,python,pytest,开发语言,软件测试,程序人生,自动化测试,功能测试

Python+Requests+Pytest+Excel+Allure 接口自动化测试项目实战【框架之间的对比】,软件测试,自动化测试,软件测试工程师,python,pytest,开发语言,软件测试,程序人生,自动化测试,功能测试

第六步、封装登录方法(common目录下面创建login.py)

获取token提供给接口使用,使用@pytest.fixture装饰器每次执行所有用例前执行一遍登录方法获取到token并返回。

Python+Requests+Pytest+Excel+Allure 接口自动化测试项目实战【框架之间的对比】,软件测试,自动化测试,软件测试工程师,python,pytest,开发语言,软件测试,程序人生,自动化测试,功能测试

第七步、对表头定义全局变量,可以定义在utils目录下面的operationExcel.py文件中

Python+Requests+Pytest+Excel+Allure 接口自动化测试项目实战【框架之间的对比】,软件测试,自动化测试,软件测试工程师,python,pytest,开发语言,软件测试,程序人生,自动化测试,功能测试

第八步、封装用例(tests目录下面创建test_gwyc_api_all.py)

需要用到@pytest.mark.parametrize()装饰器进行封装用例,调用getExceldatas()将读取出来的用例存放进装饰器,"data"为别名。如下图,分别请求头和参数做了为空判断,并将token插入到headers里面,这样每一个接口都能使用到登录返回的token,不用每次都去调用获取token。

Python+Requests+Pytest+Excel+Allure 接口自动化测试项目实战【框架之间的对比】,软件测试,自动化测试,软件测试工程师,python,pytest,开发语言,软件测试,程序人生,自动化测试,功能测试

Python+Requests+Pytest+Excel+Allure 接口自动化测试项目实战【框架之间的对比】,软件测试,自动化测试,软件测试工程师,python,pytest,开发语言,软件测试,程序人生,自动化测试,功能测试

第九步、利用allure生成测试报告。

allure是Pytest的插件包需要下载安装,并将allure里面的bin目录所在的路径配置到PATH环境变量中就可以直接使用报告。

将生成的json文件存放到用例所在的目录下面执行完成以后会在tests目录下面生成一个report目录,下面包含result目录和html目录,前者是存放json文件,后者存放读取后生成的html报告

Python+Requests+Pytest+Excel+Allure 接口自动化测试项目实战【框架之间的对比】,软件测试,自动化测试,软件测试工程师,python,pytest,开发语言,软件测试,程序人生,自动化测试,功能测试

Python+Requests+Pytest+Excel+Allure 接口自动化测试项目实战【框架之间的对比】,软件测试,自动化测试,软件测试工程师,python,pytest,开发语言,软件测试,程序人生,自动化测试,功能测试

第十步、封装日志方法(log目录下面创建log.py)

日志在自动化测试中起到的参考作用相对较小以测试报告为准,直接按相应规则配置好直接调用即可。

Python+Requests+Pytest+Excel+Allure 接口自动化测试项目实战【框架之间的对比】,软件测试,自动化测试,软件测试工程师,python,pytest,开发语言,软件测试,程序人生,自动化测试,功能测试

实战结束

便于自己记忆也能帮上需要帮助的一部分人,何乐而不为! 哈哈

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

Python+Requests+Pytest+Excel+Allure 接口自动化测试项目实战【框架之间的对比】,软件测试,自动化测试,软件测试工程师,python,pytest,开发语言,软件测试,程序人生,自动化测试,功能测试

软件测试面试小程序

被百万人刷爆的软件测试题库!!!谁用谁知道!!!全网最全面试刷题小程序,手机就可以刷题,地铁上公交上,卷起来!

涵盖以下这些面试题板块:

1、软件测试基础理论 ,2、web,app,接口功能测试 ,3、网络 ,4、数据库 ,5、linux

6、web,app,接口自动化 ,7、性能测试 ,8、编程基础,9、hr面试题 ,10、开放性测试题,11、安全测试,12、计算机基础

Python+Requests+Pytest+Excel+Allure 接口自动化测试项目实战【框架之间的对比】,软件测试,自动化测试,软件测试工程师,python,pytest,开发语言,软件测试,程序人生,自动化测试,功能测试

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!   文章来源地址https://www.toymoban.com/news/detail-696155.html

到了这里,关于Python+Requests+Pytest+Excel+Allure 接口自动化测试项目实战【框架之间的对比】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python接口自动化测试-篇1(postman+requests+pytest+allure)

    Python接口自动化测试是一种使用Python编程语言来编写脚本以自动执行针对应用程序接口(APIs)的测试过程。这种测试方法专注于检查系统的不同组件或服务之间的交互,确保它们按照预期规范进行通信,而不涉及用户界面(UI)的验证。 目录 一、接口测试基础 二、工具实现

    2024年04月17日
    浏览(65)
  • Python+requests+pytest+allure封装接口自动化1-项目结构目录创建,requests库封装

    api: 这是一个package,用来各个接口的类封装,按照你的业务可以将其分为多个package common: 这是一个package,用来封装底层公共方法,比如requests库封装、文件操作封 装、加解密封装、redis封装、数据库封装、随机数据封装、日志封装 testcases: 这是一个package,用来编写封装我们

    2024年02月12日
    浏览(64)
  • (Python)Requests+Pytest+Allure接口自动化测试框架从0到1搭建

    前面,已经学习了如何用SpringBoot写接口以及与Mysql数据库进行交互,具体可查阅下面的这篇博客,今天学习一下基于Python的接口自动化测试框架的搭建,主要包括以下内容:利用request库发送请求,请求数据参数化处理,还涉及到数据库(Mysql+MongDB)方面的交互,包括如何取数

    2024年02月13日
    浏览(161)
  • 接口自动化测试-Python+Requests+Pytest+YAML+Allure配套撸码(详细)

    接口自动化框架:Python+Requests+Pytest+YAML+Allure 通过 Python+Requests 来发送和处理HTTP协议的请求接口,使用 Pytest 作为测试执行器,使用 YAML 来管理测试数据,使用 Allure 来生成测试报告。 框架结构 api ==== 接口封装层,如封装HTTP接口为Python接口 common ==== 各种工具类 core ==== reques

    2024年02月15日
    浏览(62)
  • pytest+requests+Python3.7+yaml+Allure+Jenkins+docker实现接口自动化

    目录 接口自动化测试框架(用例自动生成) 项目说明 技术栈 环境部署 框架流程图与目录结构图及相关说明 1、框架流程图如下 2、代码目录结构图如下 关联详解 函数助手详解 代码设计与功能说明 1、定义运行配置文件 runConfig.yml 2、接口配置文件 apiConfig.ini 3、测试用例的设

    2024年02月09日
    浏览(151)
  • 基于Pytest+Allure+Excel的接口自动化测试框架

    Allure 框架是一个灵活的、轻量级的、支持多语言的测试报告工具,它不仅以 Web 的方式展示了简介的测试结果,而且允许参与开发过程的每个人可以从日常执行的测试中,最大限度地提取有用信息。 Allure 是由 Java 语言开发的,支持 Pytest,JaveScript、PHP、Ruby 等。 从 DEV/QA 的角

    2024年02月09日
    浏览(73)
  • python+request+pytest+allure接口自动化使用说明书

    接口自动化使用与流程设计: 一、设计思路 1、一个好的框架,必须要可读性强,所以目录规划尤为重要; 2、公共的方法提取出来,提高复用性; 3、可变的环境等参数,提取出来放到配置文件中,这样,每次只需要更改配置文件中的值; 4、为了追踪错误,需要必要的日志

    2024年02月09日
    浏览(71)
  • jenkins实现接口自动化持续集成(python+pytest+ Allure+git)

    在用python做自动化测试时,我们写好代码,然后需要执行才能得到测试报告,这时我们可以通过 Jenkins 来进一步完成自动化工作。借助Jenkins,我们可以结合 Git/SVN 自动拉取代码,通过设置定时构建实现自动触发脚本执行,得到测试报告,最后还可以配置发送邮件等。今天我们

    2024年02月03日
    浏览(59)
  • Python+Pytest+Allure+Git+Jenkins数据驱动接口自动化测试框架

    一、接口基础 接口测试是对系统和组件之间的接口进行测试,主要是效验数据的交换,传递和控制管理过程,以及相互逻辑依赖关系。其中接口协议分为HTTP,RPC,Webservice,Dubbo,RESTful等类型。 接口测试流程 1、需求评审,熟悉业务和需求 2、开发提供接口文档 3、编写接口测

    2024年02月08日
    浏览(83)
  • 测开新手:pytest+requests+allure自动化测试接入Jenkins学习

    2024软件测试面试刷题,这个小程序(永久刷题),靠它快速找到工作了!(刷题APP的天花板) 最近在这整理知识,发现在pytest的知识文档缺少系统性,这里整理一下,方便后续回忆。 在python中,大家比较熟悉的两个框架是unittest和pytest: Unittest是Python标准库中自带的单元测

    2024年02月01日
    浏览(57)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包