スポンサーリンク
Pythonに限らず、単体テストで避けて通れないのがassertXXXの使い方です。
assertの使い方を知れば、単体テストの書き方がわかります。
スポンサーリンク
assertの種類
assertの種類を整理しました。
また、使う頻度も合わせて整理しました。
メソッド | 確認事項 | 使う頻度 |
---|---|---|
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 | 高 |
assertIsInstance(a ,b) | isinstance(a, b) | 低 |
assertNotIsInstance(a ,b) | not isinstance(a, b) | 低 |
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 を送出する | 低 |
assertWarnsRegex(warn, r, fun, *args, **kwds) | fun(*args, **kwds) が warn を送出してメッセージが正規表現 r とマッチする | 低 |
assertLogs(logger, level) | with ブロックが 最低 level で logger を使用する | 中 |
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 に、順番によらず同じ要素が同じ数だけある | 高 |
スポンサーリンク
スポンサーリンク