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里了