Laravelは簡潔なHTTP Response Mock構文を提供し、HTTP相互作用テストを簡素化します。このアプローチは、テストシミュレーションをより直感的にしながら、コード冗長性を大幅に削減します。
基本的な実装は、さまざまな応答タイプのショートカットを提供します。
Illuminate \ support \ facades \ httpを使用します。 http :: fake([[ 'google.com' => 'hello world'、 'github.com' => ['foo' => 'bar']、 'forge.laravel.com' => 204、 ]);
この構文は、包括的なテストシナリオでうまく機能します。
クラスApiintegrationTestはテストケースを拡張します { パブリック関数test_service_communication() { http :: fake([[ //文字列応答 'api.notifications.com/*' => 'メッセージ送信'、 //配列応答(JSONに変換) 'api.products.com/*' => [ 「製品」=> [ ['id' => 1、 'name' => 'ラップトップ']、 ['id' => 2、 'name' => 'mobile'] ] ]、、 //ステータスコード応答 'api.status.com/check' => 200、 'api.deprecated.com/*' => 410、 //関連するエンドポイントのさまざまな応答タイプ 'api.orders.com/active' => ['status' => 'processing']、 'api.orders.com/error' => 400、 'api.orders.com/message' => 'システムは利用できません' ]); //アサーションでテスト$ response = http :: get( 'api.notifications.com/send'); $ this-> assertequals( 'mession sent'、$ response-> body()); $ Products = http :: get( 'api.products.com/list'); $ this-> assertcount(2、$ products ['products']); $ status = http :: get( 'api.status.com/check'); $ this-> asserttrue($ status-> succeet()); } }
この簡潔な構文は、テストを読むときに認知的負担を軽減することにより、テストの保守性を大幅に向上させ、HTTPモックの詳細ではなくビジネスロジックに集中できるようにします。
以上がLaravelテストでの簡略化されたHTTP応答のモッキングの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。