如何在Python 2.3中使用setUpClass和tearDownClass编写单元测试

0 投票
2 回答
2415 浏览
提问于 2025-04-17 00:16

我正在尝试在 Python 2.3 中编写单元测试。除了类级别的 setUp 和 tearDown 函数之外,其他的都能正常工作。我在网上查找过,但找不到在 Python 2.3 的单元测试中定义这些函数的方法。

所以,Python 2.3 的测试用例中可以有 setUpClass() 和 tearDownClass() 吗?如果可以的话,我该怎么做呢?

2 个回答

0

根据Python 2.3的标准库文档,unittest.TestCase的子类化应该和语言的更新版本中一样有效。

import unittest

class MyTest(unittest.TestCase):

    def setUp(self):
        'Do stuff to set up before each test'

    def tearDown(self):
        'Do stuff to tear down after each test'

如果你有更具体的目标,能否描述一下呢?

0

试着使用nose或者其他与Python 2.3兼容的测试工具;因为Python 2.3的测试工具不支持这些方法(setUpClass/tearDownClass)。

在Python 2.3中,要给一个函数添加装饰器,你需要手动操作(没有简化的语法),像这样:

class MyTest(unittest.TestCase):
    def setUpClass(cls): ...
    setUpClass = classmethod(setUpClass)

撰写回答