Python基础-单元测试-unittest.TestCase(setUp和tearDown)

来源:互联网 发布:川普 好莱坞 知乎 编辑:程序博客网 时间:2024/06/08 01:20

单元测试

单元测试是用来对一个模块、一个函数或者一个类来进行正确性检验的测试工作。

待测试用例

# 待测试用例class MyDict(dict):    def __init__(self, **kw):        super().__init__(**kw)    def __getattr__(self, key):        try:            return self[key]        except KeyError:            # 主动抛出异常            raise AttributeError("has no attribute %s " % (key))

单元测试用例

import unittest# 单元测试用例class TestDict(unittest.TestCase):    # 每一类测试都需要满足test为开头 test_xxx()    def test_init(self):        # 输入测试数据        d = MyDict(a =1, b="test_init")        # unittest.TestCase的断言方法        self.assertEqual(d.a, 1)        self.assertEqual(d.b, "test_init")        self.assertTrue(isinstance(d, dict))    def test_get(self):        # 输入测试数据        d = MyDict(a = 123)        self.assertEqual(d.a, 123)        #self.assertEqual(d.a, 1111)

运行单元测试用例

# 运行方法def runTest():    # 加上这2行,即单元测试用来运行    if __name__ == "__main__":        unittest.main()# 运行runTest()

运行结果

D:\PythonProject>python main.py..----------------------------------------------------------------------Ran 2 tests in 0.000sOK

感觉很妙,单元测试确实很爽

数据库单元测试setUp()和tearDown()

import unittest# 单元测试用例class TestDict(unittest.TestCase):    def setUp(self):        # 测试数据库中,进行连接数据库        print("setUp")    def tearDown(self):        # 测试数据库中,关闭数据库        print("tearDown")

运行打印如下

D:\PythonProject>python main.pysetUptearDown.setUptearDown.
原创粉丝点击