2012-02-28 142 views
2

目前,我在python unittest中使用標準形式的testclasses。例如:如何將對象傳遞給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對象。 (並在運行所有測試後關閉連接)

回答

0

看看py.test它包含一些很好的擴展來完成軟件包級別的測試。