当前位置:网站首页>Unittest框架中引入TestFixture
Unittest框架中引入TestFixture
2022-07-04 12:49:00 【大田测试录】
TestFixture是Unittest框架中的固件,写在要运行的测试用例所在类中,作为该类的类方法去使用的。
1、4个常见方法有:setUp(),tearDown(),setUpClass(),tearDownClass()
2、4个常见方法的运行规则:
setUp():运行测试用例之前都会运行的函数,用于设置配置信息、静态属性
setUpClass():需要和@classmethod装饰器一块使用,实例化类后,会自动运行的方法,主要用于实例化类、设置某些环境变量如数据库连接配置
使用unittest.main()方法运行时就会先运行setUpClass()方法中程序
tearDown():每运行完一个测试用例后,会运行,作用就是销毁每个测试用例之间的数据、释放资源、还原数据
tearDownClass():类中所有测试用例全部运行完后,会自动运行的方法,作用是销毁类级别的资源、还原数据
3、下图为每次运行一个测试用例的顺序,循环往复

4、例子
test_Fixture_demo.py
# 实例演示fixture 案例
import unittest
# 测试类
class SumDemo:
def plus(self, x, y):
return x + y
# 创建unittest测试类
class TestSum(unittest.TestCase):
add = None
# 编写测试构建
def setUp(self):
self.x = 1
self.y = 1
print("运行了setUp")
@classmethod
def setUpClass(cls):
#实例化SumDemo
cls.add = SumDemo()
print("运行了setUpClass")
def tearDown(self):
del self.x
del self.y
print("运行了tearDown")
@classmethod
def tearDownClass(cls):
del cls.add
print("运行了teardownClass")
def test_01(self):
result = self.add.plus(2, 3)
print(result)
def test_02(self):
result = self.add.plus(3, 3)
print(result)
运行结果:

边栏推荐
- go vendor 项目迁移到 mod 项目
- C语言程序设计
- MongoDB常用28条查询语句(转)
- Redis —— How To Install Redis And Configuration(如何快速在 Ubuntu18.04 与 CentOS7.6 Linux 系统上安装 Redis)
- Understanding and difference between viewbinding and databinding
- 2022g3 boiler water treatment examination question simulation examination question bank and simulation examination
- [C question set] of VII
- Huahao Zhongtian sprint Technology Innovation Board: perte annuelle de 280 millions de RMB, projet de collecte de fonds de 1,5 milliard de Beida Pharmaceutical est actionnaire
- Source code compilation and installation of MySQL
- go语言中的文件创建,写入,读取,删除(转)
猜你喜欢

分布式BASE理论

吃透Chisel语言.09.Chisel项目构建、运行和测试(一)——用sbt构建Chisel项目并运行

30:第三章:开发通行证服务:13:开发【更改/完善用户信息,接口】;(使用***BO类承接参数,并使用了参数校验)

1200. 最小绝对差

Understanding and difference between viewbinding and databinding

MySQL5免安装修改

Qt如何实现打包,实现EXE分享

小程序直播 + 电商,想做新零售电商就用它吧!

国内酒店交易DDD应用与实践——代码篇

Applet live + e-commerce, if you want to be a new retail e-commerce, use it!
随机推荐
【R语言数据科学】:交叉验证再回首
锐成芯微冲刺科创板:年营收3.67亿拟募资13亿 大唐电信是股东
DGraph: 大规模动态图数据集
C#基础深入学习一
中邮科技冲刺科创板:年营收20.58亿 邮政集团是大股东
C#基础深入学习二
担心“断气” 德国正修改《能源安全法》
Flet tutorial 03 basic introduction to filledbutton (tutorial includes source code) (tutorial includes source code)
C basic supplement
Web知识补充
unity不识别rider的其中一种解决方法
#yyds干货盘点# 解决名企真题:连续最大和
MySQL45讲——学习极客时间MySQL实战45讲笔记—— 06 | 全局锁和表锁_给表加个字段怎么有这么多阻碍
Dgraph: large scale dynamic graph dataset
免费、好用、强大的轻量级笔记软件评测:Drafts、Apple 备忘录、Flomo、Keep、FlowUs、Agenda、SideNote、Workflowy
.NET 使用 redis
Five "potential errors" in embedded programming
ASP. Net core introduction I
吃透Chisel语言.12.Chisel项目构建、运行和测试(四)——Chisel测试之ChiselTest
Qt如何实现打包,实现EXE分享