Comment étendre les fonctions PHP en utilisant Mockery ?

WBOY
Libérer: 2024-04-11 22:18:02
original
835 Les gens l'ont consulté

Utilisez Mockery pour étendre les fonctions PHP et simuler le comportement de la fonction en suivant ces étapes : Installez la bibliothèque Mockery. Utilisez Mockery::mock('alias:function name') pour créer une fonction fictive, où l'alias est utilisé pour faire référence à la fonction simulée et le nom de la fonction est la fonction qui doit être simulée. Utilisez ShouldReceive('function name') et andReturn() pour spécifier la valeur de retour ou le comportement de la fonction simulée. Une fonction fictive peut être appelée via son alias et renverra les résultats attendus.

如何使用 Mockery 扩展 PHP 函数?

Comment utiliser Mockery pour étendre les fonctions PHP ?

Préface

Dans les tests unitaires, le mocking est un outil puissant qui nous permet de créer de faux objets ou fonctions sans avoir à interagir directement avec eux. Mockery est une bibliothèque moqueuse populaire en PHP qui fournit un moyen simple et flexible de simuler un large éventail de dépendances.

Configurer Mockery

Pour utiliser Mockery, vous devez d'abord l'installer :

composer require mockery/mockery
Copier après la connexion

Extension des fonctions PHP

Mockery peut étendre les fonctions PHP, ce qui signifie que nous pouvons remplacer le comportement de n'importe quelle fonction PHP pour fournir les résultats souhaités dans les tests.

Syntaxe :

Mockery::mock('alias:函数名称');
Copier après la connexion
  • alias : Le nom utilisé pour référencer la fonction simulée
  • alias:用于引用模拟函数的名称
  • 函数名称:被模拟的函数名称

实战案例

示例 1:模拟 time() 函数

$mockTime = Mockery::mock('alias:time');
$mockTime->shouldReceive('time')
    ->andReturn(1234567890);
Copier après la connexion

这将创建一个名为 time 的模拟函数,当被调用时将返回 1234567890。

示例 2:模拟 rand() 函数

$mockRand = Mockery::mock('alias:rand');
$mockRand->shouldReceive('rand')
    ->andReturnUsing(function($min, $max) {
        return $min + 1;
    });
Copier après la connexion

这将创建一个名为 randNom de la fonction : Le nom de la fonction simulée li>

Cas pratique

Exemple 1 : Simuler la fonction time()

🎜rrreee🎜Cela créera une fonction simulée nommée time qui sera appelé quand reviendra 1234567890. 🎜🎜🎜Exemple 2 : simulez la fonction rand() 🎜🎜rrreee🎜Cela créera une fonction simulée nommée rand qui, lorsqu'elle est appelée, renverra la valeur minimale spécifiée plus 1 aléatoire nombre. 🎜🎜Conclusion🎜🎜En utilisant Mockery pour étendre les fonctions PHP, nous pouvons facilement nous moquer du comportement des dépendances et nous concentrer sur le test de la logique spécifique du code. Cela améliore considérablement les capacités de tests unitaires et nous permet de rechercher et de corriger les bogues plus efficacement. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal