unittest框架调用setUpModule/tearDownModule方法未生效

问题描述:

python版本3.8.2

# coding: utf-8


import unittest

class MyClaa(unittest.TestCase):

    def setUpModule(self):
        print("++++>start module")

    def tearDownModule(self):
        print("++++>end module")

    def test_case(self):
        print("---->test case")
        self.assertEqual(2+2,4)

    def test_case2(self):
        print("---->test case2")
        self.assertEqual(4,4)


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

调用结果:

Testing started at 0:47 ...
C:\python38\python.exe "C:\Program Files\JetBrains\PyCharm 2019.3.2\plugins\python\helpers\pycharm\_jb_unittest_runner.py" --target unittest_fixture.MyClaa
Launching unittests with arguments python -m unittest unittest_fixture.MyClaa in D:\book_code\unittest_apply

---->test case
---->test case2


Ran 2 tests in 0.002s

OK

Process finished with exit code 0

只能调用setUp/tearDown,setUpClass/tearDownClass方法,百度上也没有找到原因,烦请大佬解惑

要把setUpModule和tearDownModule放到Class外面去,即import语句的下一行。你这是写到Class里了