🦒 2024/02/03(土)
作成日: 2024/02/03
0

単体テストの考え方・使い方

  • 単体テストには出力値ベーステスト・状態ベーステスト・コミュニケーションベーステストの3つある
  • 出力値テストが一番リファクタリング耐性があり、保守性も高い
  • 状態ベーステストは、オブジェクトの状態の確認を行うため出力値ベースよりかはリファクタリング耐性が低く、保守性も低い
  • 状態ベーステストは対象のオブジェクトの振る舞い後の値を確認するテスト
  • コミュニケーションテストは、メール送信が一度だけ行われるなどのテストのことを指す
  • 一番上記が保守性も低い
  • できるだけ、出力値テストを行うために関数型プログラミングを使う
  • 値オブジェクトを使えるものはそれを使い出力値テストを行う
  • 関数型アーキテクチャーは、可変殻⇒関数的核⇒可変殻の順に行うようにする
  • 可変殻の部分は副作用があるもので関数的核ではビジネスロジックを不変的に振る舞いを行うようにする