テストガイド
Merlon は Go / TypeScript の各レイヤでテストを持つ。本文書は各テストの実行方法とテスト戦略の方針を示す。
コンポーネント別の実行
Go (API)
cd api && go test ./...
カバレッジ付き:
cd api && go test -cover ./...
UI (TypeScript / React)
cd ui && npm run test
全体実行
make test
make test は Go テストと UI テストを実行する。CI でも同じターゲットを使用する。
テスト戦略の方針(TDD)
機能実装・バグ修正は TDD(テスト駆動開発)で進める。
- テスト作成 — 期待する振る舞いを表すテストを先に書く(失敗を確認)
- 実装 — テストを通す最小限のコードを書く
- リファクタリング — テストが通る状態を保ちつつ整理する
レイヤ別の重点
- ネイティブエンジン(Go) — CDD スコアリング・TM 評価・スクリーニング・バックテストはビジネスロジックの核。判断根拠の再現性(Auditability First)を担保するため、同一入力に対する出力の決定性をテストで固定する
- API(Go) — CRUD とオーケストレーション。サービス境界の契約と、エラー時にアラート側へ倒れること(Fail-Alert)を検証する
- UI — コンポーネント単位のテストと、調査ワークフローのユーザーフロー
既存パターンへの準拠
新規テストは各ディレクトリの既存テストフレームワーク・命名規則・パターンに従う。Go は標準 testing、UI は既存のテストランナー設定を踏襲する。