系统学习Python——单元测试unittest:批量执行测试文件

分类目录:《系统学习Python》总目录


我们先新建一个Python Package,并在下面新建如下3个Python文件:
文件test1.py:

import unittest

class MyTestCase(unittest.TestCase):
    def test_a(self):
        print('test_a')

    def test_b(self):
        print('test_b')

if __name__ == '__main__':
    unittest.main()

文件test2.py:

import unittest

class MyTestCase(unittest.TestCase):
    def test_c(self):
        print('test_c')

    def test_d(self):
        print('test_d')

if __name__ == '__main__':
    unittest.main()

文件run.py

import unittest

if __name__ == '__main__':
    testsuite = unittest.TestLoader().discover('.')
    unittest.TextTestRunner(verbosity=2).run(testsuite)

执行文件run.py

test_a
test_b
test_c
test_d
test_a (test1.MyTestCase) ... ok
test_b (test1.MyTestCase) ... ok
test_c (test2.MyTestCase) ... ok
test_d (test2.MyTestCase) ... ok

----------------------------------------------------------------------
Ran 4 tests in 0.002s

OK

Process finished with exit code 0

具体分析:

  • testsuite = unittest.TestLoader().discover('.')通过unittestTestLoader提供的discover方法去寻找目录中符合条件的测试用例。
  • .代表当前目录,也可以构造、传递其他目录。
  • test开头的测试文件名为符合条件的测试用例。

另外,我们还可以在命令行模式下面执行命令python -munittest discover,效果类似。

猜你喜欢

转载自blog.csdn.net/hy592070616/article/details/125339033