Python(二)unittest框架&pytest框架

本文详细介绍了Python的unittest和pytest测试框架。unittest主要用于概念、常用属性及组件测试集合方法的介绍,包括test case、test suite、test runner和test fixture。而pytest框架的讲解涵盖下载调试、定义执行、配置文件使用、fixture应用以及跳过测试、预期失败等高级功能。pytest还具有兼容unittest的特性,并提供了丰富的参数化和自定义选项。
摘要由CSDN通过智能技术生成

Python(二)unittest框架&pytest框架

 

一、unittest框架

1、概念

test case——测试用例,是一个完整的测试单元,通过运行这个测试单元,可以对某一个问题进行验证。
test suite——测试套件,多个test case组合在一起组成test suite。
test runner——执行测试用例,其中的run(test)会执行test suite或test case中的run(result)方法。
test fixture——对测试用例环境的搭建和销毁。

2、常用属性

1)unittest模块

属性 说明 使用案例
unittest.TestCase 所有测试类都继承此父类,在其中可以编辑test case class MyTestCase(unittest.TestCase):
unittest.main() 将一个单元测试模块变为可直接运行的测试脚本进行运行 if __ name__ == ‘__ main__’:
unittest.main()
unittest.TestSuite() 创建测试套件 suite=unittest.TestSuite()
unittest.TextTestRunner() 可通过该类下面的run()方法来运行测试套件 runner=unittest.TextTestRunner()
unittest.defaultTestLoader() 可通过该类下面的discover()方法可自动更具测试目录(start_dir)匹配查找测试用例文件(test*.py),并将查找到的测试用例组装到测试套件 discover=unittest.defaultTestLoader.discover(test_dir, pattern=‘test_*.py’)
unittest.TextTestRunner() 可通过该类下面的run()方法来运行测试套件 runner=unittest.TextTestRunner()
unittest.skip() 装饰器可暂时屏蔽该条测试用例
①:无条件跳过装饰的测试
②:@条件为真时,跳过装饰的测试
③:条件为假时,跳过装饰的测试
①:@unittest.skip(reason)
②:@unittest.skipIf(condition,reason)
③:@unittest.skipUnless(condition,reason)

2)TestCase模块

属性 说明 使用案例
setUp() 方法用于测试用例执行前的初始化工作,类中的每个用例执行前都会执行一次 def setUp(self) -> None:
setUpClass() 方法用于测试类执行前的初始化工作,在测试类执行前执行一次 @classmethod
def setUpClass(cls) -> None:
tearDown() 方法用于测试用例执行之后的善后工作,类中的每个用例执行完毕后后都会执行一次 def tearDown(self) -> None:
tearDownClass() 方法用于测试类执行后的善后工作,在测试类执行完毕后后执行一次 @classmethod
def tearDownClass(cls) -> None:
assertEqual(a,b,[msg]) 断言a和b是否相等,相等则测试用例通过 — —
assertNotEqual(a,b,[msg]) 断言a和b是否相等,不相等则测试用例通过 — —
assertTrue(x,[msg]) 断言x是否True,是True则测试用例通过<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值