モック/fixtureが実APIのnull・欠落フィールドを再現しないと空状態判定が「偽green」になる
フロントエンド
テスト
コードレビュー
ハマりどころ
モック
知識
運用
空状態やCTA表示の判定は、テストのfixtureが実APIのレスポンス契約(未設定フィールドがnullで返る/特定フィールドはレスポンス自体に含まれない)を正確に再現していないと、全テストがgreenでも本番で誤動作する。fixtureが「値ゼロ・空配列」でしか空を表現していないと、実APIのnullや欠落に対して空判定がfalseになりCTAが出ない。
- 空判定ロジックは実DTOのnullableフィールドと「実在する配列だけ」で組む。レスポンスに存在しないフィールドを判定条件に入れない。
- fixture/mock factoryを実DTOのnull・欠落構造に合わせる。「全テストgreen」はfixtureが実契約とズレていれば空状態の正しさを保証しない。
- レビュー観点として、空状態・境界条件のテストは「mockが実APIの最悪ケース(全null/欠落)を再現しているか」を必ず確認する。