问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

详细分析unittest和pytest的差异比较

发布网友 发布时间:2024-09-29 08:07

我来回答

1个回答

热心网友 时间:2024-11-01 09:53

unittest 是python 的[单元测试]框架,unittest 单元测试提供了创建测试用例,测试套件以及批量执行的方案。相比于之前的pytest框架而言,unittest 在安装pyhton 以后就直接自带了,直接import unittest 就可以使用,不需要额外进行安装。

1 用例编写规则

unittest框架下测试用例的规则(耦合)

测试文件必须导包

测试类必须继承unittest.Testcase

测试方法必须以test_开头

pytest框架下测试用例的规则

测试文件必须以test_开头

测试类名必须以Test开头

测试方法必须以test_开头

2 测试用例夹具(前后置、钩子)

unittest

setUp/tearDown 测试用例之前和之后执行

setUpClass/tearDownClass 测试类之前和之后执行

setUpMole/tearDownMole 测试模块之前和之后执行(几乎不用)

pytest

setup/teardown 测试用例之前和之后执行

settp_class/teardown_class 测试类之前和之后执行

setup_mole/teardown_Mole 测试模块之前和之后执行

@pytest.fixture() 实现部分前后置

3 断言

unittest:self.assertEqual()、self.assertIn()、self.assertTrue()等丰富的断言

方法检查的内容self.assertEqual(a,b)a==bself.assertNotEqual(a,b)a!=bself.assertTrue(a)bool(a) is Trueself.assertFalse(a)bool(a) is Falseself.assertIs(a,b)a is bself.assertIsNot(a,b)a is not bself.assertIsNone(a)a is Noneself.assertIsNotNone(a)a is not Noneself.assertIn(a,b)a in bself.assertNotIn(a,b)a not in bself.assertIsInstance(a,b)isinstance(a,b)self.assertNotIsInstance(a,b)not isinstance(a,b)self.assertGreater(a,b)a>bself.assertGreaterEqual(a,b)a>=bself.assertLess(a,b)a<bself.assertLessEqual(a,b)a<=bself.assertDictEqual(a,b)字典相等self.assertListEqual(a,b)列表相等self.assertTupleEqual(a,b)元组相等self.assertSetEqual(a,b)集合相等

pytest:只有python自带的assert断言

4 测试报告

unittest:HtmlTestrunner.py

pytest:pytest-html插件、allure插件

5 失败用例重跑

unittest不支持失败重跑

pytest:pytest-rerunfailures插件

6 用例的参数化

unittest:ddt

pytest:@pytest.mark.parametrie()

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
莲花冬天发芽好吗 过冬荷花什么时候发芽 一个手机号怎样登陆两个孩子的长沙市中小学生人人通云平台 人人通怎么进入学校 人人通电脑版学生怎样登录 名侦探柯南真人版3为什么要换人? 真人版柯南,你最喜欢小栗旬还是沟端淳平? 央企中国稀土集团落户江西,衷心希望江西摆脱“环江西经济带”地位_百度... 来天津的央企有哪些 东丽区的央企有哪些 django中如何使用单元测试(django测试用例) 什么是代码测试阶段的单元测试用例(TestCase)? 为什么中国的汉人服饰会变成满清马褂? 小孩吃鸡蛋补什么 bjd df h凌风可以通过磨改和换妆变得成攻。变得更霸气一些吗。这孩子... hbjdnfo是什么意思? 【BJD问题~】问个问题..关于DOD的H-DUCAN hbjd是什么骂人的意思 武汉去桂林旅游攻略攻略图 恭城最新旅游攻略一日游 ...漓江-阳朔这几个地方的景区,还有就是梯田。。。 ...还有什么办法可以快速有效显著的东西可以去 如果一个人很喜欢你,可是你不喜欢他怎么办 苹果手机主页面左上角-54代表什么意思 我是医院编制外护士,想贷款买二手房,请问该怎么操作?我的工资卡是农行... 二手房交易刷的卡必须是工资卡吗 大光板木门好看吗 ...流行音乐演唱专辑奖是啥意思和最佳国语男歌手有啥区别 “压力大”英文怎么说?是用“pressure”还是用“stress”? 家人不幸患上结肠癌,现在肚子跟皮球一样,医生又不让吃喝,请好心人能提... JavaScript使用Chai和Mocha为API编写简单的测试用例 方舟弹白框闪退介绍_方舟弹白框闪退是什么 汽车空调也需要保养 关于汽车空调的那些事 车子空调需要定期保养吗? 空调蒸发箱要清洗多久 劲舞团现在同时在线人数是多少人?拜托各位大神 劲舞团开宝箱的具体步骤?宝箱怎么来?拜托各位大神 劲舞团会害人么?拜托各位大神 劲舞团新版里家族点数是什么意思?拜托了各位 谢谢 劲舞团的8个方向标志的数字是那些拜托各位了 3Q 劲舞团中10QB等于多少MB?拜托各位大神 劲舞团几级可以开家族,怎么开,需要什么道具?拜托各位大神 劲舞团黑色名字怎么一开游戏就变了呢?拜托各位大神 ...性格鲜明,你喜欢哪个人物?请写明喜欢的原因,并举例说明。_百度知 ... ...你喜欢其中哪一个人物?请写明喜欢的原因,并举例说明。(最少三行... &lt;西游记&gt;你喜不喜欢?喜欢里面的哪个人物?为什么喜欢他? 《西游记》第一回的读后感400字。急!急!急!急!急!急!急!急!急!_百度... 你最喜欢的西游记中的人物是谁 吴毅将刘德华演的电影 网上卖的薇姿是真的吗?