プラットフォーム
テスト用ステート注入ツール
サーバー側で状態を注入し、QA と自動化が長いフローの任意のステップへ直接ジャンプ。回帰テストの準備を十数分から1分未満に短縮。
- 技術スタック
- TypeScript · Playwright · BFF · Test database
課題
長いフローのステップ5にあるバグを確認するには、まずステップ1〜4を手作業で通す必要がありました。有効な情報の入力、アップロード、各種チェックです。毎回、すべてのプルリクエストと自動実行ごとに。
アプローチ
このツールを使うと、テスターやスクリプトは必要な状態のままアプリを開けます。
- Playwright スクリプトまたは QA エンジニアが、安全なテスト用トークン(例:
?state=step_4_ready)付きでページを読み込みます。 - フロントエンドはハイドレーション時にトークンを見つけ、ヘッダーで BFF に転送します。
- BFF は環境が本番ではないことを厳密に確認し、テスト用データベースにユーザーのセッションを作成します。前のステップは完了済みで、現在位置はステップ4です。
- BFF が本物のセッショントークンを返し、UI はすぐにステップ4を表示します。
クライアント側で localStorage をモックするのではなく、サーバー側での注入を選びました。最近のアプリはセッションをバックエンドで検証するため、クライアントだけのモックは現実からずれ、ここでは通っても本番では失敗するテストを生みます。
結果
回帰テストの準備は、1サイクルあたり10〜20分から1分未満になりました。毎週多数のプルリクエスト実行と自動化スイートが走るため、四半期あたり数百時間分のエンジニアリング工数が戻ってきました。