Heim >Backend-Entwicklung >PHP-Tutorial >Vereinfachte HTTP -Reaktion verspottet in Laravel -Tests
Laravel bietet eine kurze HTTP -Reaktions -Mock -Syntax und vereinfachte HTTP -Interaktionstests. Dieser Ansatz reduziert die Code -Redundanz erheblich, während Ihre Testsimulation intuitiver wird.
Die grundlegende Implementierung bietet eine Vielzahl von Verknüpfungen zum Antworttyp:
Verwenden Sie Illuminate \ Support \ facades \ http; Http :: fake ([ 'Google.com' => 'Hallo Welt',, 'github.com' => ['foo' => 'bar'], 'Forge.laravel.com' => 204, ]);
Diese Syntax funktioniert gut in einem umfassenden Testszenario:
Klasse ApiintegrationTest erweitert den TestCase { öffentliche Funktion Test_Service_Communication () { Http :: fake ([ // String -Antwort 'api.notifications.com/*' => 'Nachricht gesendet', // Array -Antwort (auf JSON konvertiert) 'api.products.com/*' '=> [ 'Produkte' => [ ['id' => 1, 'name' => 'Laptop'], ['id' => 2, 'name' => 'mobil']] ] ], // Statuscode -Antwort 'api.status.com/check' => 200,, 'api.deprecated.com/*' '=> 410, // Verschiedene Antworttypen verwandter Endpunkte 'api.orders.com/active' => ['Status' => 'Processing'], 'api.orders.com/Error' => 400, 'api.orders.com/message' => 'System ist nicht verfügbar' ]); // Test mit Behauptungen $ response = http :: get ('api.notifications.com/send'); $ this-> assertequals ('Nachricht gesendet', $ response-> body ()); $ products = http :: get ('api.products.com/List'); $ this-> assertCount (2, $ produkte ['produkte']); $ status = http :: get ('api.status.com/check'); $ this-> assertRue ($ status-> erfolgreich ()); } }
Diese prägnante Syntax verbessert die Wartbarkeit von Tests erheblich, indem die kognitive Belastung beim Lesen von Tests reduziert wird, sodass Sie sich eher auf die Geschäftslogik als auf HTTP -Mock -Details konzentrieren können.
Das obige ist der detaillierte Inhalt vonVereinfachte HTTP -Reaktion verspottet in Laravel -Tests. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!