1. 在外部调用 unittest 的 assert:
-
如下:
from unittest import TestCase assertObj=TestCase() assertObj.assertEqual(a, b) # a == b assertObj.assertNotEqual(a, b) # a != b assertObj.assertTrue(x) # bool(x) is True assertObj.assertFalse(x) # bool(x) is False assertObj.assertIs(a, b) # a is b assertObj.assertIsNot(a, b) # a is not b assertObj.assertIsNone(x) # x is None assertObj.assertIsNotNone(x) # x is not None assertObj.assertIn(a, b) # a in b assertObj.assertNotIn(a, b) # a not in b assertObj.assertIsInstance(a, b) # isinstance(a, b) assertObj.assertNotIsInstance(a, b) # not isinstance(a, b) assertObj.assertAlmostEqual(a, b) # round(a-b, 7) == 0 assertObj.assertNotAlmostEqual(a, b) # round(a-b, 7) != 0 assertObj.assertGreater(a, b) # a > b assertObj.assertGreaterEqual(a, b) # a >= b assertObj.assertLess(a, b) # a < b assertObj.assertLessEqual(a, b) # a <= b assertObj.assertRegexpMatches(s, re) # regex.search(s) assertObj.assertNotRegexpMatches(s, re) # not regex.search(s) assertObj.assertItemsEqual(a, b) # sorted(a) == sorted(b) and works with unhashable objs assertObj.assertDictContainsSubset(a, b) # all the key/value pairs in a exist in b assertObj.assertMultiLineEqual(a, b) # strings assertObj.assertSequenceEqual(a, b) # sequences assertObj.assertListEqual(a, b) # lists assertObj.assertTupleEqual(a, b) # tuples assertObj.assertSetEqual(a, b) # sets or frozensets assertObj.assertDictEqual(a, b) # dicts assertObj.assertMultiLineEqual(a, b) # strings assertObj.assertSequenceEqual(a, b) # sequences assertObj.assertListEqual(a, b) # lists assertObj.assertTupleEqual(a, b) # tuples assertObj.assertSetEqual(a, b) # sets or frozensets