Python 单元测试,测试用例前的语句

Python unittests, statement before test cases

想象一下我有这样的测试:

import unittest

class MyTests(unittest.TestCase):

  print("Starting")

  def test_first(self):
    .....

print 语句是否保证在 test_first() 和其他语句之前执行?据我所见,它确实首先执行,但是否存在任何边缘情况?

您可以为此使用 setUp()(docs) and setUpClass()(docs) 方法。 setUp() 方法在每个单独的测试之前执行,而 setUpClass() 方法在这个 class 运行.

中的所有测试之前执行
import unittest

class MyTests(unittest.TestCase):

    @classmethod
    def setUpClass(cls):
        print("Starting all the tests.")

    def setUp(self):
        print("Starting another test.")

    def test_first(self):
        ...