我需要测试两个几乎相同的函数,并且没有看到复制粘贴我为function1
编写的测试。我可以以某种方式将函数名称传递给派生自unittest.TestCase
的类,并设置需要在setUp
中测试的函数吗?
答案 0 :(得分:1)
这没有诀窍。函数是Python中的第一类对象,可以像任何其他参数一样传递。所以这可行,假设被测函数是'func_one'和'func_two':
class MyTestCase(unittest.TestCase):
def generic_test(self, func):
result = func()
... assertions about result....
def test_func_one(self):
self.generic_test(func_one)
def test_func_two(self):
self.generic_test(func_two)