1. 程式人生 > >Python Unittest模塊測試執行

Python Unittest模塊測試執行

用例 expect aso 方式 python div osi 更新 spa

記錄一下Unittest的測試執行相關的點

一、測試用例執行的幾種方式

1、通過unittest.main()來執行測試用例的方式:

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

2、通過testsuit來執行測試用例的方式:

if __name__==__main__:
    case = [‘TestCase]
    suite = unittest.TestSuite(map(TestClassName,case))
    unittest.TextTestRunner.run(suite)

3、通過testLoader方式:

if __name__ == "__main__":
    suite1 = unittest.TestLoader().loadTestsFromTestCase(TestCase1) 
    suite2 = unittest.TestLoader().loadTestsFromTestCase(TestCase2) 
    suite = unittest.TestSuite([suite1, suite2]) 
    unittest.TextTestRunner(verbosity=2).run(suite)

4、通過defaultTestLoader.discover方式:

if __name__ == "__main__":
  #批量執行用例
    #定義測試集所在文件夾
    path = os.path.dirname(__file__)#當前執行路徑
    discover = unittest.defaultTestLoader.discover(path, 
    pattern=test*.py)
    runner=unittest.TextTestRunner()
    runner.run(discover)

總結:個人推薦2、4這兩種方式

二、跳過測試和設置預期失敗

① @unittest.skip("reason") ==>直接跳過測試

@unittest.skip("skip TestCase")
class TestCase(self):


② @unittest.skipIf(condition,"reason") ==>條件為真,跳過測試

class Test2(self):
    def test_c(self):
     

    @unittest.skipIf(1,"skip test_b")
    def test_b(self):
        


③ @unittest.skipUnless(condition,"reason") ==>條件為假,跳過測試

class Test(self):
    @unittest.skipUnless(0>2,"skip test")
    def test(self):


④ @unittest.expectedFailure ==>設置預期為失敗

class Test1(self):
    @unittest.expectedFailure
    def test(self):

後面有相關的內容再持續更新吧

Python Unittest模塊測試執行