Python鼻子测试中的时间问题

时间:2011-11-23 12:29:04

标签: python nose nosetests

我有一些时序敏感的单元测试:操作是定时的,如果花费的时间太长则会触发错误。当单独运行时,这些测试通过,但是当我在模块上递归运行nosetest时,它们经常会失败。我运行并发测试,这可能是时间关闭的一个原因。有没有办法表明我希望这个测试能够在没有中断的情况下运行?

1 个答案:

答案 0 :(得分:1)

我认为您的问题取决于您实施时间的方式。我个人采用的解决方案是设置一个控制测试行为的环境变量。候选人可能是:

  • if WITH_TIMING == False [完全关闭时间]
  • TIME_STRETCH_FACTOR = ... [在运行并发测试的情况下应用时间拉伸乘数,例如,如果TIME_STRETCH_FACTOR为1.5,则时间限制为5将变为7.5]

如果这不是一个选项,可能的丑陋解决方法是模拟time.time()函数,使其返回一个常量值[这只有在你使用{{1在你的测试当然直接] ...

HTH