待测试的python函数包含没有很好模块化的连续部分,即:
def f():
do stuff A
...
do stuff B
...
do stuff C
如果我只想测试“B”的东西,而且我不想手动模拟“A / C”中的每一行,那么无论如何都要进行python单元测试吗?谢谢!
答案 0 :(得分:4)
您需要使用方法提取重构此函数。这将创建更多可以进行单元测试的功能。
def a():
do stuff A
def b():
do stuff B
def c():
do stuff C
def f():
a()
b()
c()
答案 1 :(得分:0)
如果您无法重构代码,请尝试使用fuzzer对其进行测试,以生成随机测试数据。