test · git:20260427.cc366ee · 2026-04-27 · sha256 084fd9f6ab7ab0a0
test git:20260427.cc366eeA
Immutable. This exact content never changes and is served at /api/v1/blob/084fd9f6ab7ab0a0.
--- name: test description: Test code conventions. Do not modify tests when fixing bugs; fix the implementation instead. Avoid implementation branches that depend on specific test data values. Use when writing or modifying test code, or when tests are failing. user-invocable: false --- # テスト ## テストコードは変更しない 問題を修正する時にテストコードを変更することは基本的に禁止します。 テストは仕様を表すものであり、実装の正しさを検証するためのものです。 テストが失敗している場合は、実装側を修正してください。 テストコードを実装に合わせるのは禁止。 テストが誤っていると思ったら質問して確認してください。 独自判断でテストを書き換えるのは禁止。 ### テストコードを変更しても良い例外 テストコードを変更して良い例外は以下のような場合です。 - テストを追加するタスクを依頼されている。 - テストを修正するタスクを依頼されている。 - テストコードに明らかな構文エラーがある。 ## テストデータに依存した条件分岐は避ける 実装コードがテストで使用されている具体的なデータ値を特別扱いすることは基本的に禁止。 具体的なデータ値とは、例えば変数名やテーブル名などです。 データに依存した実装は以下のような問題を引き起こします。 - 脆弱なテスト: テストデータが変更されると実装が機能しなくなる。 - 隠れた仕様: 特定のデータ名に対する特別な処理が明示的な仕様ではなく暗黙的になる。 - 汎用性の欠如: 実際の運用環境では機能しない可能性がある。