コグラフ株式会社データアナリティクス事業部の村上です。 本記事では、基本的なソフトウェアテストの概要とpythonのテストフレームワークpytestについて紹介します。 第1章:はじめにPythonで関数やモジュールを実装していく中で、以下のような課題に直面した経験はないでしょうか。 想定外の入力に対する例外処理が不十分で、処理が中断する 一部ロジックを変更した結果、別の機能の出力結果が不正になる デグレード(既存機能の仕様逸脱)をリリース後に初めて認識する 手動テストでは網羅性に限界があり、確認コストも高い これらはすべて、仕様を満たしていることを機械的に検証できない状態に起因します。 そこで重要になるのが、自動テストの導入です。 ここでは、Pythonにおける自動テストの標準的選択肢である pytest に注目し、以下の流れで説明します。 なぜテストが必要か テストがない場合とある場合