如何将对象传递给unittest类

时间:2012-02-28 10:59:15

标签: python unit-testing

目前我在python unittest中使用标准形式的测试类。例如:

import unittest, myTestSystem
class MyTestPackage(unittest.TestCase):

    @classmethod
    def setUpClass(cls):
        cls.sut = myTestSystem.Setup()
        cls.sut.connect(<IP>, <PORT>)

    @classmethod
    def tearDownClass(cls):
        cls.sut.disconnect()
        del cls.sut

    def test1(self):
        ret = dosomestuff()
        self.assertEqual(ret, 0)

if __name__ == "__main__":
    unittest.main()

但是,我有几个这样的测试套件,因为它有一大堆测试。把所有在一个TestClass中放在一起并不是很好。问题是,对于每个测试套件的启动,我将我连接到我的测试系统(sut),运行我的测试并再次断开连接。 我的问题是,如果以前可以进行常规设置,则将sut对象转发给我的测试类并运行这些测试,使用这个sut对象。 (并在运行所有测试后关闭连接)

1 个答案:

答案 0 :(得分:0)

看看py.test它包含一些很好的扩展来进行包级别测试设置。