Open4

なんでVRTがあるのにコンポーネントテストを書くんですか?

ken7253ken7253

前提

自分はVRTに含まれているコンポーネントに対してテストを書くことが多い。
一方でが無駄なテストコードでは?と聞かれる事が多いのでなんで書いているかを解説していく。

ken7253ken7253

解説

答えから言うとテストの性質が違うからで、下記のような理解をしている。

対象 / 期待する役割 リグレッション検知 あるべき挙動を定める
関数 スナップショットテスト 単体テスト
UI VRT コンポーネントテスト

スナップショットテストは簡単に書けるが、一方でこのコードはどういう状態であるべきかという仕様や設計上の意図が残せない。

ken7253ken7253

なので単体テストとVRTを組み合わせて

  • コンポーネントがどういう状態であるべきか
  • その状態が変化していないか

この両方をチェックする必要がある。