美文网首页
python unittest.TestCase 断言方法

python unittest.TestCase 断言方法

作者: abcdeuck | 来源:发表于2019-08-12 16:50 被阅读0次

1、最常见断言方法

断言方法 检查条件
assertEqual(a, b) a == b
assertNotEqual(a, b) a != b
assertTrue(x) bool(x) is True
assertFalse(x) bool(x) is False
assertIs(a, b) a is b
assertIsNot(a, b) a is not b
assertIsNone(x) x is None
assertIsNotNone(x) x is not None
assertIn(a, b) a in b
assertNotIn(a, b) a not in b
assertlsInstance(a, b) isinstance(a, b)
assertNotIsInstance(a, b) not isinstance(a, b)

2、T与异常、错误、警告和日志相关的断言方法

断言方法 检查条件
assertRaises(exc, fun, *args, **kwds) fun(*args, **kwds) 引发 exc 异常
assertRaisesRegex(exc, r, fun, *args, **kwds) fun(*args, **kwds) 引发 exc 异常,且异常信息匹配 r 正则表达式
assertWarns(warn, fun, *args, **kwds) fun(*args, **kwds) 引发 warn 警告
assertWamsRegex(warn, r, fun, *args, **kwds) fun(*args, **kwds) 引发 warn 警告,且警告信息匹配 r 正则表达式
assertLogs(logger, level) With 语句块使用日志器生成 level 级别的日志

3、用于完成某种特定检查的断言方法

断言方法 检查条件
assertAlmostEqual(a, b) round(a-b, 7) == 0
assertNotAlmostEqual(a, b) round(a-b, 7) != 0
assertGreater(a, b) a > b
assertGreaterEqual(a, b) a >= b
assertLess(a, b) a < b
assertLessEqual(a, b) a <= b
assertRegex(s, r) r.search(s)
assertNotRegex(s, r) not r.search(s)
assertCountEqual(a, b) a、b 两个序列包含的元素相同,不管元素出现的顺序如何

4、针对特定类型的断言方法

断言方法 用于比较的类型
assertMultiLineEqual(a, b) 字符串(string)
assertSequenceEqual(a, b) 序列(sequence)
assertListEqual(a, b) 列表(list)
assertTupleEqual(a, b) 元组(tuple)
assertSetEqual(a, b) 集合(set 或frozenset)
assertDictEqual(a, b) 字典(dict)

相关文章

网友评论

      本文标题:python unittest.TestCase 断言方法

      本文链接:https://www.haomeiwen.com/subject/lknujctx.html