我是 Python 的初学者,开始在 Python 中设计单元测试,我需要在运行测试类之前向服务器发布一些消息(因为它会搜索它们)。因此我需要调用一个非静态方法postMessages()
。
我得到的错误的堆栈跟踪是这个 -
Error
Traceback (most recent call last):
File ".../TestMsgs.py", line 23, in setUpClass
instance = cls()
File ".../python2.7/unittest/case.py", line 191, in __init__
(self.__class__, methodName))
ValueError: no such test method in <class 'TestMsgs.TestMsgs'>: runTest
我在代码中有这样的东西:
class A(object):
def postMessages(self):
print "i post messages in the server!"
class B(A):
@classmethod
def setUpClass(cls):
cls.foo() # should post messages for the tests in the class to work on
目前没有选择使 foo 成为静态的。如何在 postMessages() 中实例化 B(或 A,就此而言),以便我可以在 setUpClass() 中使用它?