1 def f(n): 2 """ 3 >>>f(1) 4 1用例 5 >>>f(2) 6 2用例 7 ...... 8 >>>f(n) 9 n用例 10 11 """ 12 print(n) 13 if __name__ == "__main__" 14 import doctest 15 doctest.testmod()
1 from widget import widget 2 import unittest 3 4 #執行測試用例的類 5 class widgetTestCase(unittest.TestCase) 6 7 def setUp(self): 8 self.widget = widget() 9 def tearDown(self): 10 self.widget.dispose() 11 self.widget = None 12 def testSize(self): 13 self.assertEqual(self, widget.getSize(),(40,40)) 14 def testResize(self): 15 self.widget.resize(100,100) 16 self.assertEqual(self, widget.getSize(), (100,100)) 17 #測試 18 if __name__ = "__main__":
構造測試集
1 suit = unittest.TestSuite() 2 suit.addTest(widgetTestCase("testSize")) 3 suit.addTest(widgetTestCase("testResize"))
執行測試
1 runner = unittest.TextTestRunner()
2 runner.run(suite)
1>構造TestCase
setup和teardown負責預處理和善后工作
2>構造測試用例集,添加用例
3>執行用例說明測試方法,N多測試函數
TestCase.assert_(expr[, msg])
TestCase.failUnless(expr[, msg])
TestCase.assertTrue(expr[, msg])
TestCase.assertEqual(first, second[, msg])
TestCase.failUnlessEqual(first, second[, msg])
TestCase.assertNotEqual(first, second[, msg])
TestCase.failIfEqual(first, second[, msg])
TestCase.assertAlmostEqual(first, second[, places[, msg]])
TestCase.failUnlessAlmostEqual(first, second[, places[, msg]])
TestCase.assertNotAlmostEqual(first, second[, places[, msg]])
TestCase.failIfAlmostEqual(first, second[, places[, msg]])
TestCase.assertRaises(exception, callable, ...)
TestCase.failUnlessRaises(exception, callable, ...)
TestCase.failIf(expr[, msg])
TestCase.assertFalse(expr[, msg])
TestCase.fail([msg])