如何避免单元测试中的代码重复

时间:2019-10-26 22:19:10

标签: python unit-testing testing

假设我有一个称为“阶乘”的函数,并且我想测试该函数。我经常发现自己重写了如下所示的单元测试,其中定义了一些测试用例(可能包括一些边缘用例),并为所有这些运行测试。定义测试值和预期输出并在其上运行测试的通用模式使我有了以下样板代码。本质上,我想拥有一个 one 函数,该函数将测试值列表与期望值列表以及用于对其进行测试的函数传递给该函数,并让框架为我处理其余的功能。是否存在类似的东西,并且会反对这种简化方法?

{{1}}

欢呼

1 个答案:

答案 0 :(得分:0)

您可以使用其他形式。

input_values = [1, 2, 3, 4, 5]
solutions = [1, 2, 6, 24, 120]
result = dict(zip(input_values, solutions)) # Key:Value
print(result)
match = {i: k for i, k in result.items() if i == k} # Key Value comparison
print(match)

结果:

{1: 1, 2: 2, 3: 6, 4: 24, 5: 120}
{1: 1, 2: 2}