1
class MyTestCaseA(TestCase):
    def setUp(self):
        # some setup here...

    def test_case(self):
        # some test

class MyTestCaseB(TestCase):
    def setUp(self):
        # some setup here...

    def test_case(self):
        # some test

我需要在 MyTestCaseA 和 MyTestCaseB 之间共享数据。就我而言,我想共享为每次执行测试创建的文件夹的路径(通过“manage.py test myapp”)。就我而言,我将截取浏览器的屏幕截图(使用 selenium),并且我想将在我的各种测试用例中截取的所有屏幕截图存储在同一个临时文件夹中。

如果我在 SetUp 函数中创建一个临时文件夹,那么每个测试用例都会有一个不同的临时文件夹。

4

1 回答 1

1

尝试以下操作:

class SharedTempDir(object):
    def prepare(self):
        if not hasattr(SharedTempDir, 'tempdir'):
            # This part will be executed only once.
            SharedTempDir.tempdir = .... make temporary directory ...

class MyTestCaseA(TestCase, SharedTempDir):
    def setUp(self):
        SharedTempDir.prepare(self)
        ...
    def test_blah(self):
        ... use self.tempdir ... or SharedTempDir.tempdir ...

class MyTestCaseB(TestCase, SharedTempDir):
    def setUp(self):
        SharedTempDir.prepare(self)
        ...
于 2013-09-13T13:38:00.787 回答