有没有一种简单的方法让python Unittest只对一部分函数进行单元测试?

时间:2012-01-11 15:30:08

标签: python unit-testing

待测试的python函数包含没有很好模块化的连续部分,即:

def f():
  do stuff A
  ...
  do stuff B
  ...
  do stuff C

如果我只想测试“B”的东西,而且我不想手动模拟“A / C”中的每一行,那么无论如何都要进行python单元测试吗?谢谢!

2 个答案:

答案 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对其进行测试,以生成随机测试数据。