unittest
開発者が作成した関数やメソッドが意図した通りに機能するかを確かめる単体テストを作成し、まとめて実行して結果を報告してくれる。開発者は unittest.TestCase を継承したクラスを作成し、「test_対象メソッド」という命名規約に従ってテストケースを列挙していく。
テストケースには対象メソッドを実行する際の引数や期待される出力などを指定し、assertEqualなどのアサーション機能を通じて結果を報告する。作成したテストは「python -m unittest テストモジュール名」でまとめて実行し、結果を一覧することができる。モジュール名の箇所はクラス名やメソッド名(テストケース名)とすることもできる。
個別にテストを記述して実施する場合に比べ、テストコードを対象のコード本体とは別にまとめて管理することができ、複数のテストの実行も一気に行うことができる。コードを変更した後に動作確認を簡単に行うことができ、欠陥箇所の早期発見に寄与する。
(2021.8.13更新)