相关疑难解决方法(0)

当使用twisted和trial启动两个等效的unittest时,ReactorNotRestartable

我有两个测试类(TrialTest1TrialTest2)写在两个文件(test_trial1.pytest_trial2.py)中大多数相同(唯一的区别是类名):

from twisted.internet import reactor
from twisted.trial import unittest


class TrialTest1(unittest.TestCase):

    def setUp(self):
        print("setUp()")

    def test_main(self):
        print("test_main")
        reactor.callLater(1, self._called_by_deffered1)
        reactor.run()

    def _called_by_deffered1(self):
        print("_called_by_deffered1")
        reactor.callLater(1, self._called_by_deffered2)

    def _called_by_deffered2(self):
        print("_called_by_deffered2")
        reactor.stop()

    def tearDown(self):
        print("tearDown()")
Run Code Online (Sandbox Code Playgroud)

当我完全运行每个测试时,一切都很好.但是当我启动它时,我有以下输出:

setUp()
test_main
_called_by_deffered1
_called_by_deffered2
tearDown()
setUp()
test_main
tearDown()

Error
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/twisted/internet/defer.py", line 137, in maybeDeferred
    result = f(*args, **kw)
  File "/usr/lib/python2.7/site-packages/twisted/internet/utils.py", line 203, in runWithWarningsSuppressed
    reraise(exc_info[1], exc_info[2])
  File "/usr/lib/python2.7/site-packages/twisted/internet/utils.py", line 199, in runWithWarningsSuppressed
    result …
Run Code Online (Sandbox Code Playgroud)

python testing unit-testing twisted trial

6
推荐指数
1
解决办法
6778
查看次数

标签 统计

python ×1

testing ×1

trial ×1

twisted ×1

unit-testing ×1