ファントムモック: ブラウザ内APIモッキング用のChrome拡張機能
ファントムモックは、ファントムモックチームによって開発されたChrome拡張機能で、ブラウザのネットワークリクエストを傍受してフロントエンドテストのためにバックエンドレスポンスをシミュレートします。このツールは、開発者がローカルで作業しながら異なるサーバー状態をエミュレートできるように、FetchおよびXHRアクティビティをキャプチャします。完全にブラウザ内で動作するローカルファースト、ゼロコンフィギュレーションのソリューションとして自らをマーケティングしています。対象ユーザーは、ライブバックエンドから独立してインターフェースをテストする必要があるフロントエンド開発者とQAエンジニアです。
Phantom Mockで何をテストできますか?
開発者は、サーバーコードを変更することなく、フロントエンドのエラーハンドリングやデータ状態の変動を試すことができます。この拡張機能は、APIのエッジケースを再現するのを実用的にし、UIコンポーネント、エラーメッセージ、およびリトライロジックを予測可能な応答に対して検証できます。この機能は決定論的テストをサポートし、開発およびQA中に変化するバックエンドへの依存を減らします。テストデータには、欠落フィールドやコンポーネントの耐久性のための境界値が含まれることがあります。
- HTTPエラーコード 404や500など
- さまざまなデータ状態のためのカスタムJSONペイロード
- 読み込みおよびフォールバックロジックをテストするための遅延または空の応答
モックを適用し、ルールを変更するのにどれくらいの速さですか?
この拡張機能は、多くの開発シナリオでリアルタイムにモックルールを適用するため、変更はページを再読み込みすることなくすぐに反映されることがよくあります。レイテンシをシミュレートするために、ルールごとの応答遅延を設定したり、テストケースを切り替えるためにクリックで単一のルールまたは拡張機能全体をトグルしたりできます。この即時性は、特定のAPI条件下でのUIの動作を診断する際の反復時間を短縮します。
リクエスト選択はどれほど細かく、どこで実行されますか?
リクエストターゲティングは、URLパターンマッチング、HTTPメソッドフィルター、および正規表現をサポートしているため、ルールは特定のエンドポイントや呼び出しのグループをターゲットにできます。この拡張機能は、FetchとXMLHttpRequestのトラフィックの両方をインターセプトし、テストスコープを狭く保つためのルールごとの有効化を含んでいます。これは、ChromeやEdge、Brave、VivaldiなどのChromiumベースのブラウザ向けに配布されており、外部プロキシなしでローカル実行を維持します。
ブラウザ制限のあるローカルAPIモッキングの実用的な選択肢
Phantom Mockは、UIテスト中にAPIレスポンスを迅速にローカルで制御する必要があるフロントエンド開発者やQAエンジニアにとって実用的なオプションです。その範囲はChromiumベースのブラウザに制限されており、他のエンジンを使用しているチームには制約があります。実用的なヒントとして、プライベートモードのテストシナリオを実行する前に、ブラウザの「シークレットモードで許可」設定を有効にしてください。この拡張機能は、外部プロキシ設定よりもブラウザ内でのモック管理を優先するワークフローに適しています。
高評価
- アプリケーションコードを変更せずにリクエストをインターセプトします
- カスタム JSON レスポンスと構成可能な HTTP ステータス コードをサポートします
- ルールごとの応答遅延は、遅いネットワーク条件をシミュレートするためのものです。
- パターンマッチングとメソッドフィルターによる正確なリクエストターゲティング
低評価
- Chromiumベースのブラウザのみで利用可能
- インコグニートの使用は、ブラウザの設定で手動で有効にする必要があります
- いくつかのモックルールは、特定のシナリオでページの再読み込みを必要とする場合があります。