在Python中应使用TestCase还是FunctionTestCase进行测试?

2 投票
1 回答
1023 浏览
提问于 2025-04-16 19:47

在我尝试了解Python中的测试驱动开发(TDD)时,我遇到了FunctionTestCase这个类。我明白它是用来定义和TestCase类等效的函数。

assertEqual = failUnlessEqual(self, first, second, msg=None)
assertNotEqual = failIfEqual(self, first, second, msg=None)
# and so on...

使用FunctionTestCaseTestCase之间有什么明显的区别,还是说这只是个人喜好问题呢?

1 个回答

6

FunctionTestCase可以帮助我们轻松地重用已有的代码。通常情况下,你可能会使用TestCase这个类。

来自unittest文档的内容:

有些用户会发现,他们有一些现成的测试代码,希望能在unittest中运行,而不想把每个旧的测试函数都转换成TestCase的子类。

因此,unittest提供了一个FunctionTestCase类。这个类是TestCase的一个子类,可以用来包装一个已有的测试函数。同时,你也可以提供设置和清理的函数。

撰写回答