Skip to the content.

0007. TDD で開発する: Vitest (unit / integration) + Playwright (E2E)

Context

resource-planner はこれまで「動くコードを書いて手動で確認」 で進んできた。CI は型検査 (pnpm check) と build のみで、テストは 0 件。これから着手する Auth.js 移行 (#65) と Team モデル再設計 (#25) は触る面積が広く、「無自覚に何かを壊す」 リスクが高い。

合わせて、認証バグ (Org 未指定の 403 を URL 再叩きでバイパスできた現象) が手動 QA をすり抜けた 事実があり、回帰検知の自動化が必要。

Decision

TDD (赤テスト → 緑テスト → リファクタ) を採用する。テストランナーは以下:

レイヤ ツール 用途
Unit / Integration Vitest 純粋関数 (date, schemas, timeline-adapter)、repository 層 (aws-sdk-client-mock)、DDB Local 統合
Component Vitest + @testing-library/svelte (将来) Svelte 5 コンポーネント (必要になった PR で導入)
E2E Playwright (基盤 PR-T5、実 spec は PR-A3 以降) サインイン → CRUD のフルパス

設定方針:

テスト命名規約:

スクリプト:

Playwright 設定:

起票プロセスへの反映:

Consequences

Positive

Negative

Neutral

Alternatives considered

References