简单了解pytest测试框架setup和tearDown
pytest的setup与teardown
1)pytest提供了两套互相独立的setup 与 teardown和一对相对自由的setup与teardown
2)模块级与函数级
模块级(setup_module/teardown_module) #开始于模块始末(不在类中)
函数级(setup_function/teardown_function) #只对函数用例生效(不在类中)
3)方法级与类级
方法级(setup_method/teardown_method) #开始于方法始末(在类中)
类级(setup_class/teardown_class) #只在类中前后运行一次(在类中)
3)类里面的(setup/teardown) #运行在调用方法的前后
setup与teardown例子
import pytest # 模块中的方法 def setup_module(): print( "setup_module:整个test_module.py模块只执行一次" ) def teardown_module(): print( "teardown_module:整个test_module.py模块只执行一次" ) def setup_function(): print("setup_function:每个用例开始前都会执行") def teardown_function(): print("teardown_function:每个用例结束后都会执行") # 测试模块中的用例1 def test_one(): print("正在执行测试模块----test_one") # 测试模块中的用例2 def test_two(): print("正在执行测试模块----test_two") # 测试类 class TestCase(): def setup_class(self): print("setup_class:所有用例执行之前") def teardown_class(self): print("teardown_class:所有用例执行之后") def setup_method( self): print("setup_method: 每个用例开始前执行") def teardown_method(self): print("teardown_method: 每个用例结束后执行") def setup(self): print("setup:每个用例开始前都会执行") def teardown(self): print("teardown:每个用例结束后都会执行") def test_three(self): print("正在执行测试类----test_three") def test_four(self): print("正在执行测试类----test_four") if __name__ == "__main__": pytest.main(["-s", "test_module.py"])
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
Python unittest单元测试框架总结
什么是单元测试 单元测试是用来对一个模块.一个函数或者一个类来进行正确性检验的测试工作. 比如对于函数abs(),我们可以编写的测试用例为: (1)输入正数,比如1.1.2.0.99,期待返回值与输入相同 (2)输入复数,比如-1.-1.2.-0.99,期待返回值与输入相反 (3)输入0,期待返回0 (4)输入非数值类型,比如None.[].{}.期待抛出TypeError 把上面这些测试用例放到一个测试模块里,就是一个完整的单元测试 unittest工作原理 unittest中最核心的四部分
-
Python Unittest自动化单元测试框架详解
本文实例为大家分享了Python Unittest自动化单元测试框架的具体代码,供大家参考,具体内容如下 1.python 测试框架(本文只涉及 PyUnit) 参考地址 2.环境准备 首先确定已经安装有Python,之后通过安装PyUnit,Python版本比较新的已经集成有PyUnit(PyUnit 提供了一个图形测试界面UnittestGUI.py) 参考:查看地址 3.代码实例 使用的IDE为 PyCharm,DEMO结构如图 1.简单地一个实例 # Test002_Fail.py #
-
Python+request+unittest实现接口测试框架集成实例
1.为什么要写代码实现接口自动化 大家知道很多接口测试工具可以实现对接口的测试,如postman.jmeter.fiddler等等,而且使用方便,那么为什么还要写代码实现接口自动化呢?工具虽然方便,但也不足之处: 测试数据不可控制 接口测试本质是对数据的测试,调用接口,输入一些数据,随后,接口返回一些数据.验证接口返回数据的正确性.在用工具运行测试用例之前不得不手动向数据库中插入测试数据.这样我们的接口测试是不是就没有那么"自动化了". 无法测试加密接口 这是接口测试工具的一大硬伤,如
-
Python unittest单元测试框架的使用
一.测试模型 下面这部分来自于某书籍资料,拿过来,按需参考一下: 测试模型 (1)线性测试 1.概念: 通过录制或编写对应应用程序的操作步骤产生的线性脚本.单纯的来模拟用户完整的操作场景.(操作,重复操作,数据)都混合在一起. 2.优点:每个脚本相对独立,且不产生其他依赖和调用.任何一个测试用例脚本拿出来都可以单独执行. 3.缺点:开发成本高,用例之间存在重复的操作.比如重复的用户登录和退出. 维护成本高,由于重复的操作,当重复的操作发生改变时,则需要逐一进行脚本的修改. 4.线性测试实例:用户
-
Python单元测试框架unittest使用方法讲解
概述 1.测试脚手架(test fixture) 测试准备前要做的工作和测试执行完后要做的工作.包括setUp()和tearDown(). 2.测试案例(test case) 最小的测试单元. 3.测试套件(test suite) 测试案例的集合. 4.测试运行器(test runner) 测试执行的组件. 命令行接口 可以用命令行运行测试模块,测试类以及测试方法. 复制代码 代码如下: python -m unittest test_module1 test_module2 python -m
-
python自动化测试之setUp与tearDown实例
本文实例讲述了python自动化测试之setUp与tearDown的用法,分享给大家供大家参考.具体如下: 实例代码如下: class RomanNumeralConverter(object): def __init__(self): self.digit_map = {"M":1000, "D":500, "C":100, "L":50, "X":10, "V":5, "I
-
Python单元测试框架unittest简明使用实例
测试步骤 1. 导入unittest模块 import unittest 2. 编写测试的类继承unittest.TestCase class Tester(unittest.TestCase) 3. 编写测试的方法必须以test开头 def test_add(self) def test_sub(self) 4.使用TestCase class提供的方法测试功能点 5.调用unittest.main()方法运行所有以test开头的方法 复制代码 代码如下: if __name__ == '__
-
简单了解pytest测试框架setup和tearDown
pytest的setup与teardown 1)pytest提供了两套互相独立的setup 与 teardown和一对相对自由的setup与teardown 2)模块级与函数级 模块级(setup_module/teardown_module) #开始于模块始末(不在类中) 函数级(setup_function/teardown_function) #只对函数用例生效(不在类中) 3)方法级与类级 方法级(setup_method/teardown_method) #开始于方法始末(在类中) 类
-
pytest测试框架+allure超详细教程
目录 1.测试识别和运行 2.参数化 3.测试报告美化-allure 1.测试识别和运行 文件识别: 在给定的目录中,搜索所有test_.py或者_test.py文件 用例识别: Test*类包含的所有test_*的方法(测试类不能有__init__方法) 不在类中的所有test_*方法 pytest也能执行unit test写的用例和方法 运行方式1.pycharm页面修改默认的测试运行方式settings页面,输入pytest,修改Default test runner 2.右键执行pyth
-
Pytest测试框架基本使用方法详解
pytest介绍 pytest是一个非常成熟的全功能的Python测试框架,主要特点有以下几点: 1.简单灵活,容易上手,文档丰富: 2.支持参数化,可以细粒度地控制要测试的测试用例: 3.能够支持简单的单元测试和复杂的功能测试,还可以用来做selenium/appnium等自动化测试.接口自动化测试(pytest+requests); 4.pytest具有很多第三方插件,并且可以自定义扩展 如pytest-selenium(集成selenium). pytest-html(完美html测试报告
-
Python测试框架pytest介绍
目录 一.Pytest简介 二.Pytest安装 三.Pytest测试执行 四.测试类主函数 五.断言方法 六.常用命令详解 七.接口调用 一.Pytest简介 Pytest is a mature full-featured Python testing tool that helps you write better programs.The pytest framework makes it easy to write small tests, yet scales to support
-
Python 测试框架unittest和pytest的优劣
一.Unittest Unittest是Python标准库中自带的单元测试框架,Unittest有时候也被称为PyUnit,就像JUnit是Java语言的标准单元测试框架一样,Unittest则是Python语言的标准单元测试框架. Unittest支持自动化测试,测试用例的初始化.关闭和测试用例的聚合等功能,它有一个很重要的特性:它是通过类(class)的方式,将测试用例组织在一起. 示例: 运行结果 注:unittest有一个关联模块unittest2,但unittest2仅适用于Pytho
-
Python测试框架pytest高阶用法全面详解
目录 前言 1.pytest安装 1.1安装 1.2验证安装 1.3pytest文档 1.4 Pytest运行方式 1.5 Pytest Exit Code 含义清单 1.6 如何获取帮助信息 1.7 控制测试用例执行 1.8 多进程运行cases 1.9 重试运行cases 1.10 显示print内容 2.Pytest的setup和teardown函数 函数级别setup()/teardown() 类级别 3.Pytest配置文件 4 Pytest常用插件 4.1 前置条件: 4.2 Pyt
-
python测试框架unittest和pytest区别
一.用例编写规则 (1)unittest提供了test cases.test suites.test fixtures.test runner相关的类,让测试更加明确.方便.可控.使用unittest编写用例,必须遵守以下规则: 测试文件必须先import unittest 测试类必须继承unittest.TestCase 测试方法必须以"test_"开头 测试类必须要有unittest.main()方法 (2)pytest是python的第三方测试框架,是基于unittest的扩展框
-
Python测试框架:pytest学习笔记
python通用测试框架大多数人用的是unittest+HTMLTestRunner,这段时间看到了pytest文档,发现这个框架和丰富的plugins很好用,所以来学习下pytest. pytest是一个非常成熟的全功能的Python测试框架,主要有以下几个特点: 简单灵活,容易上手 支持参数化 能够支持简单的单元测试和复杂的功能测试,还可以用来做selenium/appnium等自动化测试.接口自动化测试(pytest+requests) pytest具有很多第三方插件,并且可以自定义扩展
-
Pytest实现setup和teardown的详细使用详解
前言 用过unittest的童鞋都知道,有两个前置方法,两个后置方法:分别是 setup() setupClass() teardown() teardownClass() Pytest也贴心的提供了类似setup.teardown的方法,并且还超过四个,一共有十种 模块级别:setup_module.teardown_module 函数级别:setup_function.teardown_function,不在类中的方法 类级别:setup_class.teardown_class 方法级别:
-
Python测试框架pytest核心库pluggy详解
目录 代码案例 实例化: 添加到钩子定义中 (add_hookspecs) 注册插件 register 运行插件 pm.hook.myhook 代码案例 import pluggy # HookspecMarker 和 HookimplMarker 实质上是一个装饰器带参数的装饰器类,作用是给函数增加额外的属性设置 hookspec = pluggy.HookspecMarker("myproject") hookimpl = pluggy.HookimplMarker("m
随机推荐
- 利用python微信库itchat实现微信自动回复功能
- 浅谈Javascript中的函数、this以及原型
- IE无法设置短域名下Cookie
- PHP查询并删除数据库多列重复数据的方法(利用数组函数实现)
- Thinkphp实现自动验证和自动完成
- 详解VueJS 数据驱动和依赖追踪分析
- 解析Java继承中方法的覆盖和重载
- Linux网络服务器配置基础
- ES6字符串模板,剩余参数,默认参数功能与用法示例
- PHP在不同页面间传递Json数据示例代码
- Go语言实现遗传算法的实例代码
- iOS 请求权限封装类的实例代码
- Spring Data的Domain Event的用法详解
- 浅谈C++的几种从键盘输入方式
- Python csv模块使用方法代码实例
- 5分钟教你用nodeJS手写一个mock数据服务器的方法
- C语言文件操作总结
- 详解用Python练习画个美队盾牌
- PHPUnit + Laravel单元测试常用技能
- python使用html2text库实现从HTML转markdown的方法详解