python中的unittest有啥作用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python中的unittest有啥作用相关的知识,希望对你有一定的参考价值。
python中unittest模块是用来做单元测试的。
unittest是一个python版本的junit,junit是java中的单元测试框架,对java的单元测试,有一句话很贴切:Keep thebar green,相信使用eclipse写过java单元测试的都心领神会。unittest实现了很多junit中的概念,比如我们非常熟悉的test case, test suite等,总之,原理都是相通的,只是用不同的语言表达出来。
下面是一个例子
import randomimport unittest
class TestSequenceFunctions(unittest.TestCase):
def setUp(self):
self.seq = range(10)
def test_shuffle(self):
# make sure the shuffled sequence does not lose any elements
random.shuffle(self.seq)
self.seq.sort()
self.assertEqual(self.seq, range(10))
# should raise an exception for an immutable sequence
self.assertRaises(TypeError, random.shuffle, (1,2,3))
def test_choice(self):
element = random.choice(self.seq)
self.assertTrue(element in self.seq)
def test_sample(self):
with self.assertRaises(ValueError):
random.sample(self.seq, 20)
for element in random.sample(self.seq, 5):
self.assertTrue(element in self.seq)
if __name__ == \'__main__\':
unittest.main() 参考技术A unittest框架介绍
unittest是python自带的单元测试框,具备编写用例、组织用例、执行用例、输出报告等自动化框架的条件,可以用来作自动化测试框架的用例组织执行框架。
python中unittest框架有什么作用?
①提供用例组织与执行:当测试用例只有几条的时候可以不考虑用例的组织,但是当测试用例数量较多时,就需要考虑用例的规范与组织问题,unittest单元测试框架就是用来解决这个问题的。
②提供丰富的断言方法:是测试,就有一个预期结果和实际结果的比较问题。比较就是通过断言来实现,unittest单元测试框架提供了丰富的断言方法,通过捕获返回值,并且与预期值进行比较,从而得出测试通过与否。
③提供丰富的日志:每一个失败用例我们都想要知道失败的原因,所有用例执行结束我们都希望知道整体的执行情况,比如:总体执行时间、失败用例数、成功用例数。unittest单元测试框架为我们提供了这些数据。
以上是关于python中的unittest有啥作用的主要内容,如果未能解决你的问题,请参考以下文章
Python unittest 中的 setUp() 和 setUpClass() 有啥区别?