目录一、框架执行的三种方式TestSuite1、测试用例维度(了解)方法1:添加单个用例并执行  suite.addTest(TestDemo("test_01"))方法2:添加多个用例并执行2、测试类维度(了解)3、以测试模块为维度(掌握)二、测试报告1、使用BeautifulReport库,这个功能比较少,仅了解2、使用unittestreport库,这个是重写了TestRunner
pytest 有时也被称为 py.test,是因为它使用的执行命令是 $ py.test。本文中我们使用 pytest 指代这个测试框架,py.test 特指运行命令。 <br /> ##较于 nose这里没有使用像前三篇一样(简介-举例-discovery-环境)式的分段展开,是因为 pytest 与 nose 的基本用法极其相似。因此只做一个比较就好了。他俩的区别仅在于调用测试
转载 2024-05-22 11:08:32
47阅读
一、项目结构解析与展示项目结构api: 这是一个package,用来各个接口的类封装,按照你的业务可以将其分为多个packagecommon: 这是一个package,用来封装底层公共方法,比如requests库封装、文件操作封装、加解密封装、redis封装、数据库封装、随机数据封装、日志封装testcases: 这是一个package,用来编写封装我们的测试用例confifig: 这是一个目录,
pytest封装接口自动化测试pytest是一个Python的单元测试框架,它可以很好地支持接口自动化测试。要使用pytest进行接口测试,需要进行如下步骤:1.安装pytest使用pip安装pytest:pipinstallpytest2.安装requests使用pip安装requests库:pipinstallrequests3.创建测试用例编写测试用例,使用requests库发送HTTP请求
原创 精选 2023-02-18 15:58:26
678阅读
1点赞
文章目录1. 接口自动化的实现2. 知识要点及实践2.1 requests.post传递的参数本质2.2 pytest单元测试框架2.2.1 pytest框架简介2.2.2 pytest装饰器2.2.3 断言、allure测试报告2.2.4 接口关联、封装改进YAML动态传参(热加载)2.3 pytest接口封装(统一请求封装)参考 1. 接口自动化的实现API:Application Prog
一、Unittest:unittest是Python自带的单元测试框架,我们可以用其来作为我们自动化测试框架的用例组织执行框架二、Unittest核心工作原理:unittest中最核心的四个概念是:test case, test suite, test runner, test fixture1. TestCase一个TestCase的实例,就是一个测试用例。 测试用例:一个完整的测试流程,包括测
转载 9月前
38阅读
Hook 方法之 pytest_addoption :pytest_addoption 可以让用户注册一个自定义的命令行参数,方便用户将数据传递给 pytest;这个 Hook 方法一般和 内置 fixture pytestconfig 配合使用,pytest_addoption 注册命令行参数,pytest
什么是断言:功能:Python内置的assert语句(断言)可以用来自动检测Python程序中的错误,让程序更可靠更易于调试。 含义:断言语句是一种调试工具,用来测试某个断言条件,如果断言条件为真,则程序将继续正常执行;如果条件为假,则会引发AssertionError异常并显示相关错误信息。接口中断言:接口断言一般有两种,一种是通过返回值的状态码是否等于200,一种是业务的判断,业务判断可以使用
转载 2024-03-19 13:51:44
317阅读
requests是用来发送http请求以及接收http响应的python第三方库,主要用于做接口自动化。今天我们来学习一下如何封装pytest里。1、安装requestspip install requests2、requests库常用方法。包括了http的几种常见请求和必填参数requests.get(url, params=None, **kwargs) requests.post(url,
断言是一种除错机制,用于验证代码是否符合编码人员的预期。pytest自带的assert断言有以下几种语法:import time # 测试类名必须以Test开头,并且不能有init方法 class Test1: # • assert xx :判断xx为真 # • assert not xx :判断xx不为真 # • assert a in b :判断b包含a # •
断言的编写和报告使用assert语句进行断言pytest允许你使用标准的Pythonassert断言语句来验证测试中的期望结果和实际结果。 例如,你可以编写以下内容:Copy# test_assert1.py文件内容deff(): return3deftest_function(): assert f() == 4来断言你的函数返回一个特定的值。 如果此断言失败,你将看到函数调用的
unittest是python自带的单元测试框架,它封装了一些校验返回的结果方法和一些用例执行前的初始化操作,使得单元测试易于开展,因为它的易用性,一般拿它来做功能测试和接口测试,只需简单开发一些功能(报告,初始化webdriver,或者http请求方法)便可实现。但自动化测试中我们常常希望测试用例可以并发执行,这些unittest都做不到。pytest是python里的一个强大框架,它可以用来做
转载 2023-09-29 10:03:47
136阅读
# 使用pytest封装MySQL的指南 在本文中,我将引导你通过使用pytest框架来封装MySQL数据库,以便进行单元测试。这项任务大致可以分为几个步骤,我们将逐步完成它。以下是整个流程的概述: | 步骤 | 描述 | | ---- | ---- | | 1 | 安装所需的库 | | 2 | 创建数据库连接类 | | 3 | 编写测试用例 | | 4 | 运行测试用
pytest中,有时候我们并不需要对所有的用例全部执行。pytest提供了一种机制:有选择的挑选用例去执行,即标记测试函数。下面详细介绍几种方法给函数标记。1.使用pytest.mark在函数上进行标记1.1 标记格式“@”表示这是一个装饰器,“pytest.mark”是pytest固定的写法,mark_name可以使用自定义标记和内置标记。@pytest.mark.mark_name1.2 内
转载 2024-09-10 10:30:38
54阅读
一、前言  在项目中我们要频繁地用到log日志、request请求方法、断言等,所以我们可以把这些常用的方法封装成日志,下面将逐个文件讲述下,不会讲太细,但会把源码贴出来,还有一点要说的是公共方法如果看不懂的话可以不用纠结,知道用处以及清楚在实际业务中怎么调用公共方法就行了。二、tools目录展示  公共方法封装不会涉及到业务代码。  三、common.py  该文件需要导入封
一、关联利用Python提供的fixture可以实现关联1、实现步骤:case目录下,新建conftest.py文件,比如我们需要token,就在这个文件下定义一个公共的方法,调用登录接口并返回需要的token值(注:公共的方法一般不传入参数,返回值其实也是看情况可要可不要的)@pytest.fixture(scope='function') #使用pytest的fixture把下面的方法变成
转载 2023-11-01 10:34:12
365阅读
前言pytest配置文件可以改变pytest的运行方式,它是一个固定的文件pytest.ini文件,读取配置信息,按指定的方式去运行。ini配置文件pytest里面有些文件是非test文件pytest.ini pytest的主配置文件,可以改变pytest的默认行为conftest.py 测试用例的一些fixture配置__init__.py 识别该文件夹为python的package包tox.i
转载 2024-05-06 19:15:00
35阅读
        我们在学习或调试过程中,测试用例的调试信息都非常有用,可以让我们知道现在的运行情况,执行到哪步以及相应的出错信息等,可以在pytest里面,有时并不会输出所有信息,比如默认情况下pass的测试用例是没有print输出的,本文主要就是解决这个问题。 一、用print输出log信息  我们在编写简单的Python程序时,往往可以通过pr
admin 2018年06月20日 程序员 768 0 简介pytest:帮助你写出更好的程序:开源,免费。升级pytest,严格的向后兼容性。丰富的第三方插件。内置assert断言。安装pip install -U pytest # or easy_install -U pytest查看版本py.test --version也许你已经使用un
 1、概述pytest是一个非常成熟的全功能的Python测试框架,主要特点有以下几点:1、简单灵活,容易上手,文档丰富;2、支持参数化,可以细粒度地控制要测试的测试用例;3、能够支持简单的单元测试和复杂的功能测试,还可以用来做selenium/appnium等自动化测试、接口自动化测试(pytest+requests);4、pytest具有很多第三方插件,并且可以自定义扩展,比较好用的
转载 2024-05-11 12:43:36
754阅读
  • 1
  • 2
  • 3
  • 4
  • 5