


Comment utiliser PHPUnit et Mockery pour les tests unitaires ?
Dans le développement de projets PHP, les tests unitaires sont une tâche très importante. PHPUnit et Mockery sont deux frameworks de tests unitaires PHP très populaires. PHPUnit est un outil de test unitaire largement utilisé, tandis que Mockery est un outil de simulation d'objets qui vise à fournir une API unifiée et concise pour créer et gérer des simulations d'objets.
En utilisant PHPUnit et Mockery, les développeurs peuvent effectuer rapidement et efficacement des tests unitaires pour garantir l'exactitude et la stabilité de leur base de code. Cet article explique comment utiliser PHPUnit et Mockery pour les tests unitaires, vous permettant ainsi d'effectuer de tels tests facilement.
- Tout d'abord, nous devons installer PHPUnit et Mockery. Ici, nous utiliserons Composer pour installer rapidement ces deux outils. Dans le répertoire du projet où vous souhaitez utiliser PHPUnit et Mockery, exécutez la commande suivante :
composer require --dev phpunit/phpunit mockery/mockery
Cette commande installera PHPUnit et Mockery en tant que dépendances de développement dans votre projet pour faciliter l'exécution du test unitaire. .
- Ensuite, nous montrerons comment utiliser PHPUnit pour créer un scénario de test. Supposons que vous écriviez une classe appelée « Calculatrice » qui gère les opérations arithmétiques de base. Nous allons créer un scénario de test sur cette classe et vérifier si elle est capable d'effectuer correctement l'opération d'ajout.
Dans le dossier de votre projet, créez un fichier appelé "CalculatorTest.php" et écrivez-y le code suivant :
use PHPUnitFrameworkTestCase; use MyAppCalculator; class CalculatorTest extends TestCase { public function testAddition() { $calculator = new Calculator(); $result = $calculator->add(2, 2); $this->assertEquals(4, $result); } }
Dans ce cas de test, nous instancions d’abord un objet Calculatrice, puis utilisons la méthode add() pour effectuer l’opération d’addition. Enfin, nous utilisons la méthode assertEquals() pour vérifier si le résultat de l’opération correspond à la valeur attendue.
- Ensuite, voyons comment utiliser Mockery pour simuler un objet. Dans de nombreux cas, nous ne souhaitons pas utiliser d'objets réels lors des tests, mais utiliser un objet fictif pour les remplacer afin que les tests puissent être plus raffinés et efficaces. La moquerie facilite la création et l'utilisation de ces objets fictifs.
Supposons que nous écrivions une classe nommée "UserService" pour gérer la logique métier liée à l'utilisateur. Cette classe dépend d'une autre classe appelée « UserRepository » pour accéder au magasin de données utilisateur. Nous pouvons utiliser Mockery pour simuler cette dépendance afin de vérifier que le UserService fonctionne normalement dans le test.
Dans votre dossier de projet, créez un fichier appelé "UserServiceTest.php" et écrivez-y le code suivant :
use PHPUnitFrameworkTestCase; use MyAppUserService; use MyAppUserRepository; use MockeryAdapterPhpunitMockeryPHPUnitIntegration; class UserServiceTest extends TestCase { use MockeryPHPUnitIntegration; public function testCreateUser() { $repo = Mockery::mock(UserRepository::class); $repo->shouldReceive('create') ->once() ->with(['name' => 'Alice']); $service = new UserService($repo); $service->createUser('Alice'); } }
Dans ce cas de test, nous utilisons le "Mockery: :mock()" fonction pour créer un objet UserRepository fictif. Ensuite, via la méthode "shouldReceive()", nous nous attendons à ce que la méthode "create()" de cet objet fictif soit appelée une fois, en passant un tableau nommé "'Alice'" comme paramètre. Enfin, nous instancions un objet UserService et appelons la méthode "create()" de l'objet fictif via sa méthode "createUser()".
- Enfin, discutons de la façon d'exécuter des cas de test dans PHPUnit et Mockery. En supposant que nous ayons créé les deux cas de test ci-dessus, nous pouvons utiliser la commande suivante pour les exécuter :
./vendor/bin/phpunit
Cette commande trouvera automatiquement tous les cas de test du projet et les exécutera. Si tous les tests réussissent, PHPUnit affichera un message pour le confirmer.
Si vous souhaitez uniquement exécuter un scénario de test spécifique, vous pouvez spécifier le fichier de test ou la méthode de test après la commande. Par exemple, pour exécuter la méthode testAddition() dans « CalculatorTest.php », vous pouvez exécuter la commande suivante :
./vendor/bin/phpunit tests/CalculatorTest.php --filter testAddition
Avec ces étapes simples, vous pouvez utiliser PHPUnit et Mockery pour les tests unitaires PHP. Une suite de tests correcte et complète contribuera à garantir la qualité et la stabilité de la base de code du projet PHP et facilitera l'amélioration continue et le développement continu.
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!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds



Dans ce chapitre, nous comprendrons les variables d'environnement, la configuration générale, la configuration de la base de données et la configuration de la messagerie dans CakePHP.

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

Pour travailler avec la date et l'heure dans cakephp4, nous allons utiliser la classe FrozenTime disponible.

Travailler avec la base de données dans CakePHP est très simple. Nous comprendrons les opérations CRUD (Créer, Lire, Mettre à jour, Supprimer) dans ce chapitre.

Pour travailler sur le téléchargement de fichiers, nous allons utiliser l'assistant de formulaire. Voici un exemple de téléchargement de fichiers.

Dans ce chapitre, nous allons apprendre les sujets suivants liés au routage ?

CakePHP est un framework open source pour PHP. Il vise à faciliter grandement le développement, le déploiement et la maintenance d'applications. CakePHP est basé sur une architecture de type MVC à la fois puissante et facile à appréhender. Modèles, vues et contrôleurs gu

Le validateur peut être créé en ajoutant les deux lignes suivantes dans le contrôleur.
