我已经开始使用鼻子来运行测试。我发现多处理插件有一个超时,我可以在命令行上进行更改。
有没有办法延长单个测试的超时时间(在测试代码中),所以我没有大量的全局超时?
我已经开始使用鼻子来运行测试。我发现多处理插件有一个超时,我可以在命令行上进行更改。
有没有办法延长单个测试的超时时间(在测试代码中),所以我没有大量的全局超时?
我对多处理插件没有任何经验,但如果你用这样的方式子类化插件:
from nose.plugins.multiprocess import MultiProcess
PLUGIN = None
class TimeoutMultiProcess(MultiProcess):
def configure(self, options, conf):
global PLUGIN
PLUGIN = self
super(TimeoutMultiProcess, self).configure(options, conf)
if not self.enabled:
return
然后您可以创建自己的测试运行脚本,例如:
import unittest
class TestA(unittest.TestCase):
def setUp(self):
from runtest import PLUGIN
print PLUGIN.config.multiprocess_timeout
def test_a(self):
pass
def test_b(self):
pass
if __name__ == '__main__':
from runtest import TimeoutMultiProcess
import nose
nose.main(addplugins=[TimeoutMultiProcess()], defaultTest="./test.py")
您将能够config.multiprocess_timeout
在测试中将 更改为不同的值。我不确定它是否适合你,但值得一试。