在unittest python库中,我可以在每个测试之前使用setUp
方法设置变量,在所有测试之前使用setUpclass
。
如何将数据从setUpClass
传递到setUp
?
我试试这个:
class TestSequenceFunctions(unittest.TestCase):
@classmethod
def setUpClass(cls):
cls.a = 0
def setUp(self):
self.a = cls.a
def test_hello01(self):
self.assertEquals(self.a, 0)
if __name__ == '__main__':
unittest.main(verbosity=2)
但我得到
NameError: global name 'cls' is not defined
答案 0 :(得分:3)
您可以使用__class__
属性访问对象的类。
self.a = self.__class__.a
答案 1 :(得分:2)
在setUp()中,您可以直接访问'a'而不使用'cls'表示法,即:
def setUp(self):
print self.a # should print 0