Pythonのunittest.TestResultのメソッド addFailure

unittest.TestResult クラスには addFailure というメソッドが存在します。addFailure メソッドは、テストケースの実行中にアサーションに失敗した場合に呼び出され、その失敗情報を unittest.TestResult オブジェクトに記録します。

以下は、addFailure メソッドを使用してアサーションに失敗した場合の処理を示す簡単な例です:

python
import unittest class MyTestCase(unittest.TestCase): def test_failure(self): self.assertEqual(1, 2) # アサーションに失敗 if __name__ == '__main__': test_suite = unittest.defaultTestLoader.loadTestsFromTestCase(MyTestCase) test_result = unittest.TestResult() test_suite.run(test_result) # 失敗情報を取得 failures = test_result.failures for test, err in failures: print(f"Failure in test: {test}, Error: {err}")

上記の例では、test_failure メソッドでアサーションに失敗しており、addFailure メソッドが呼び出されて失敗情報が unittest.TestResult オブジェクトに記録されます。その後、failures 属性を通じて失敗情報を取得し、表示しています。

addFailure メソッドは、テスト実行結果をカスタマイズする際に役立ちます。特に、アサーションに失敗した場合の処理や失敗情報の収集に使用されます。