Verwenden Sie Mockery, um PHP-Funktionen zu erweitern und das Verhalten der Funktion zu simulieren, indem Sie die folgenden Schritte ausführen: Installieren Sie die Mockery-Bibliothek. Verwenden Sie Mockery::mock('alias:function name'), um eine Scheinfunktion zu erstellen, wobei Alias verwendet wird, um auf die Scheinfunktion zu verweisen, und der Funktionsname die Funktion ist, die verspottet werden muss. Verwenden Sie ShouldReceive('function name') und andReturn(), um den Rückgabewert oder das Verhalten der simulierten Funktion anzugeben. Eine Scheinfunktion kann über ihren Alias aufgerufen werden und liefert die erwarteten Ergebnisse.
Bei Unit-Tests ist Mocking ein leistungsstarkes Werkzeug, mit dem wir gefälschte Objekte oder Funktionen erstellen können, ohne direkt mit ihnen interagieren zu müssen. Mockery ist eine beliebte Mocking-Bibliothek in PHP, die eine einfache und flexible Möglichkeit bietet, eine Vielzahl von Abhängigkeiten zu verspotten.
Um Mockery nutzen zu können, müssen Sie es zunächst installieren:
composer require mockery/mockery
Mockery kann PHP-Funktionen erweitern, was bedeutet, dass wir das Verhalten jeder PHP-Funktion ersetzen können, um die gewünschten Ergebnisse zu liefern bei Tests.
Syntax:
Mockery::mock('alias:函数名称');
alias
: Der Name, der zur Referenzierung der simulierten Funktion verwendet wirdalias
:用于引用模拟函数的名称函数名称
:被模拟的函数名称示例 1:模拟 time()
函数
$mockTime = Mockery::mock('alias:time'); $mockTime->shouldReceive('time') ->andReturn(1234567890);
这将创建一个名为 time
的模拟函数,当被调用时将返回 1234567890。
示例 2:模拟 rand()
函数
$mockRand = Mockery::mock('alias:rand'); $mockRand->shouldReceive('rand') ->andReturnUsing(function($min, $max) { return $min + 1; });
这将创建一个名为 rand
Funktionsname
: Der Name der simulierten Funktion li>
Beispiel 1: Simulieren der Funktion time()
time
erstellt Wird aufgerufen, wenn 1234567890 zurückgegeben wird. 🎜🎜🎜Beispiel 2: Simulation der Funktion rand()
🎜🎜rrreee🎜Dadurch wird eine Simulationsfunktion mit dem Namen rand
erstellt, die beim Aufruf den angegebenen Mindestwert plus 1 Zufall zurückgibt Nummer. 🎜🎜Fazit🎜🎜Durch die Verwendung von Mockery zur Erweiterung von PHP-Funktionen können wir das Verhalten von Abhängigkeiten leicht nachahmen und uns auf das Testen der spezifischen Logik des Codes konzentrieren. Dies verbessert die Unit-Test-Funktionen erheblich und ermöglicht es uns, Fehler effizienter zu finden und zu beheben. 🎜Das obige ist der detaillierte Inhalt vonWie erweitere ich PHP-Funktionen mit Mockery?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!