python + pytest 基本使用方法(Fixture)
2024-09-07 23:06:36
#firtures通常用来对测试方法、测试函数、测试类和整个测试文件进行初始化或还原测试环境
# setup_module/teardown_module:在当前文件中,在所有测试用例执行之前与之后执行,只执行一次;
# setup_function/teardown_function:在每个测试函数之前与之后执行;
# setup/teardown:在每个测试函数之前与之后执行;
# 在当前文件下打开cmd窗口执行:pytest -s test_fixtures_01.py
#功能函数
def multiply(a,b):
return a * b
#===============Firtures=============
def setup_module(module):
print('setup_module------------>')
def teardown_module(module):
print('teardown_module--------->')
def setup_function(function):
print('setup_function---------->')
def teardown_function(function):
print('teardown_function-------->')
def setup():
print('setup---------->')
def teardown():
print('teardown------->')
#==========测试用例==========
def test_multiply_3_4():
print('test_numbers_3_4')
assert multiply(3,4) == 12
def test_multiply_a_3():
print('test_numbers_a_3')
assert multiply('a',3) == 'aaa'
#pytest 是支持使用测试类的,同样必须以Test开头,注意首字母大写。
# setup_class/teardown_class:在当前测试类的开始与结束时执行,只执行一次;
# setup_module/teardown_module:在每个测试方法开始与结束时执行;
# setup/teardown:在每个测试方法开始与结束时执行;
# 在当前文件下打开cmd窗口执行:pytest -s test_fixtures_02.py
#功能函数
def multiply(a,b):
return a * b
class TestMultiply:
#===============Firtures=============
@classmethod
def setup_class(cls):
print('setup_class------------>')
@classmethod
def teardown_class(cls):
print('teardown_class--------->')
def setup_module(self,module):
print('setup_module------------>')
def teardown_module(self,module):
print('teardown_module--------->')
def setup(self):
print('setup---------->')
def teardown(self):
print('teardown------->')
#==========测试用例==========
def test_multiply_5_6(self):
print('test_numbers_5_6')
assert multiply(5,6) == 30
def test_multiply_b_3(self):
print('test_numbers_b_3')
assert multiply('b',3) == 'bbb'
最新文章
- 【追寻javascript高手之路04】理解prototype
- python为什么有私有方法和变量
- swift 异步加载图片(第三方框架ImageLoader)
- volatile 关键字的复习
- 常用字符串API
- SQLIO Disk Subsystem Benchmark Tool
- mysqldump: unknown option '--no-beep'
- [转] GDB disassemble
- mongoDB windows reinstall add auth
- 在四川大学的第二个冠军游戏在线编程:Peter的X
- Tornado 用户身份验证框架
- java基础(八)-----深入解析java四种访问权限
- Anaconda安装python tensorflow 环境
- CentOS7 安装配置rsync
- Golang入门教程(八)复合数据类型使用案例一
- Asp.Net Identity cookie共享
- Faster RCNN原理分析(二):Region Proposal Networks详解
- 重温servlet②
- 与IE的战斗
- [转帖] IPsec相关知识 --未知来源
热门文章
- cuDNN 功能模块解析
- 码农飞升记-04-OracleJDK 与 OpenJDK 的区别和联系以及 OracleJDK builds 与其他 OpenJDK builds 的选择问题
- 微软发布了Visual Studio 2022 Preview 1 以及.NET 6 Preview 5
- 【NX二次开发】查找部件中的对象 UF_OBJ_cycle_objs_in_part
- centos 7 查看磁盘使用情况
- 基于ILI9341的TFT液晶显示模组LCM240320详解(1)
- Drools规则引擎实践直白总结
- Terraform入门教程,示例展示管理Docker和Kubernetes资源
- 18、linux文件属性
- 利用C语言判别用户输入数的奇偶性和正负性