在Python中,`assert`语句用于在代码中测试条件是否为真。如果条件为假,程序会抛出一个`AssertionError`异常。`assert`语句的基本语法如下:
assert condition, message
其中`condition`是需要测试的条件,`message`是可选的,用于在断言失败时提供额外的错误信息。
Python的`unittest`模块提供了一些常用的断言方法,这些方法主要用于测试框架中。以下是一些`unittest.TestCase`中常用的断言方法:
1. `assertEqual(a, b)`:检查`a`是否等于`b`。
2. `assertNotEqual(a, b)`:检查`a`是否不等于`b`。
3. `assertTrue(x)`:检查`x`是否为`True`。
4. `assertFalse(x)`:检查`x`是否为`False`。
5. `assertIn(item, list)`:检查`item`是否在`list`中。
6. `assertNotIn(item, list)`:检查`item`是否不在`list`中。
7. `assertEqual(a, b, delta=1e-7, places=7)`:检查`a`和`b`是否足够接近,允许一定的误差范围。
8. `assertIsNotNone(obj)`:检查对象`obj`是否为`None`。
9. `assertIsNone(obj)`:检查对象`obj`是否为`None`。
10. `assertTrue(x, msg)`:检查`x`是否为`True`,并在失败时提供自定义错误信息。
11. `assertFalse(x, msg)`:检查`x`是否为`False`,并在失败时提供自定义错误信息。
12. `assertRaises(exception, func, *args, kwargs)`:检查`func`调用时是否抛出`exception`异常。