Hypothesis是Python的一个高级测试库。它允许编写测试用例时参数化,然后生成使测试失败的简单易懂的测试数据。可以用更少的工作在代码中发现更多的bug。
安装
pip install hypothesis
如何设计测试数据
通过介绍也许你还不了解它是干嘛的,没关系!我们举个例子。
首先,我有一个需要测试的函数:
def add(a, b):
"""实现加法运算"""
return a + b
测试代码是这样的:
import unittest
class AddTest(unittest.TestCase):
def test_case1(self):
c = add(1, 2)
self.assertEqual(c, 3)
def test_case2(self):
c = add(0, 2)
self.assertEqual(c, 2)
def test_case3(self):
c = add(-2, 2)
self.assertEqual(c, 0)
if __name__ == "__main__":
unittest.main()
为了更全面的验证的 add() 函数,我必须设计足够多的 测试数据, 同样也需要很多条用例!
当然,为了测试足够多的数据,我们也可以将代码改称这样。
im