unittest模块

一 相关概念:

*test fixture:表示执行测试的准备工作和清理工作,例如:创建临时和代理数据库、目录等。对应的类:FunctionTestCase。

*test case:最小的测试单元,测试给定输入下的指定相应,unittest模块提供了一个基类,TestCase,用来创建新的test cases。

*test suite:test cases或test suites的集合,用来集成需要一起执行的测试工作。对应类:TestSuite

*test runner:控制测试的执行,并提供测试结果。


二 简单使用:

import unittest
class TestData(unittest.TestCase):
    def setUp(self):
        pass

    def tearDown(self):
        pass

    def test_get(self):
        pass
if __name__ == '__main__'
    unittest.main()

*执行方式:(1)python xxx.py;(2)python -m unittest xxx yyy zzz

*测试类需继承unittest.TestCase;覆盖setUp和tearDown方法,虽然不是必须,但最好提供.

*所有测试方法需要以[Tt]est开头,类的名字没有这个要求。

*可以用如下代码替代unittest.main,下面的控制更细致:

suite = unittest.TestLoader().loadTestsFromTestCase(TestData)
unittest.TextTestRunner(verbosity=2).run(suite)


(2)python -m unittest的用法:python -m unittest -h

unittest模块_第1张图片


unittest模块_第2张图片









你可能感兴趣的:(python模块)