ソースプロジェクト
ここでのテストパターンを抽出した本番プロジェクト -- それぞれがどんなプロジェクトで、何のパターンをもたらしたのか、そしてなぜテストのアプローチはデプロイ先に合わせなければならないのか。
本番環境で検証済みのアプローチ
このガイドのパターンは、理論的なベストプラクティスではなく、実際の本番プロジェクトから得られたものです。各パターンは出荷されたソフトウェアで使用され、実際のバグや障害を通じて洗練されています。
パターンは4つのカテゴリに整理されています:ツールや実装技法に固有のものはツールパターン、リポジトリの形に規定されるものはプロジェクトレシピ、CI・デプロイ・リリースをまたいでスイートを走らせるものはCI運用、テストが偽る様々な形とそれを防ぐ規律はテスト完全性です。
プロジェクト一覧
| プロジェクト | タイプ | 主要なテストパターン |
|---|---|---|
| zudo-text | Tauriテキストエディタ(モノレポ) | ワークスペースパッケージ横断のVitestユニット、Rust cargo test コアクレート、デュアルブラウザPlaywright(Chromium CI / WebKitローカル)、モックバックエンドアダプター + コンソールエラーモニタリング、階層化e2eタグ |
| zzmod | コンテンツWebサイト(zfb + Preactアイランド) | Vitestユニット(jsdom、Testing Library/Preact、MSW)、本番ビルドPlaywright、タグベースの@smoke/@heavyレーン、CI画像インターセプト、ローカルb4push経由のCIオフ重量E2E |
| pgen | パターンジェネレーター(モノレポ + GPUランタイム) | 決定論的PNGレンダリング、Miniflare + D1/R2ワーカーインテグレーション、タグ階層化Playwright e2e、GPUビジュアルリグレッション(SSIMドリフト、GLSLパリティ) |
| mdx-formatter | CLI + npmライブラリ(Rust napi) | VitestによるRustエンジンのコントラクトテスト、冪等性不変条件、コミット済みベースラインに対するスナップショットリグレッション、execFileによるCLIインテグレーション |
| zfb | フロントエンドビルドオーケストレーター / SSG | Rustワークスペース cargo test(主要)、バインディング形状スタブ、生成コードの動的インポート、信頼できる唯一の情報源ガード、happy-domルーターの癖、NodeフリーなDockerスモークE2E |
| zudo-doc | ドキュメントサイトフレームワーク | 6レベルのテスト分類(Vitestユニット → 静的dist読み取り → Playwrightマルチフィクスチャーe2e → verify-ui)、remark/rehypeゴールデンフィクスチャのコーパス + mdastツリーファクトリー |
共通テーマ
すべてのプロジェクトを通じて、1つのテーマが浮かび上がります:テストアプローチはデプロイ先に合わせなければなりません。Webアプリにはブラウザレベルのテストが必要です。CLIツールには出力検証が必要です。Tauriアプリには WebKit固有のテストが必要です。普遍的なテスト設定は存在せず、特定のコンテキストに適したテスト設定があるだけです。
Revision History
作成更新