单元测试用于核实函数的某个方面没有问题;测试用例是一组单元测试,核实函数在各种情形下的行为都符合要求。
全覆盖式测试用例包含一整套单元测试,涵盖了各种可能的函数使用方法。
模块unittest提供了代码测试工具。
要为函数编写测试用例,可先导入模块unittest以及要测试的函数,再创建一个继承unittest.TestCase的类,并编写一系列方法对函数行为的不同方法进行测试。
import unittest
from mokuai import get_def
class NamesTestCase(unittest.TestCase):
def test_first_name(self):
formatted_name=get_def('lin','he')
self.assertEqual(formatted_name,'lin he')#断言方法
unittest.main()
所有以test打头的方法都将自行运行。
断言方法用来核实得到的结果是否与期望的一致。
-
各种断言方法
assertEqual(a,b)
assertNotEqual(a,b)
assertTrue(a,b)
assertFalse(a.b)
assertIn(item,list)
assertNotIn(item,list) -
unittest.TsetCase类包含方法setUp()。每次在运行以test打头的方法时,该方法都会运行一次。