0Pricing
PHP Academy · Leçon

Configurer PHPUnit et écrire son premier test

Installer PHPUnit via Composer et écrire votre première classe de test.

Configurer PHPUnit et écrire son premier test est une leçon PHP Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage PHP Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours PHP Academy comprend 4 leçons au total.

Qu’est-ce que PHPUnit ?

PHPUnit est le framework standard de tests unitaires de PHP. Il vous permet d’écrire des tests automatisés qui vérifient des unités de code individuelles de manière isolée.

Installation de PHPUnit

Installez-le avec Composer comme dépendance de développement.

$ composer require --dev phpunit/phpunit "^11.0"

Configuration de phpunit.xml

Créez un fichier phpunit.xml pour configurer la suite de tests.

<?xml version="1.0" encoding="UTF-8"?>
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:noNamespaceSchemaLocation="vendor/phpunit/phpunit/phpunit.xsd"
         bootstrap="vendor/autoload.php">
    <testsuites>
        <testsuite name="Unit">
            <directory>tests/</directory>
        </testsuite>
    </testsuites>
</phpunit>

Écriture d’une classe de test

Étendez PHPUnit\Framework\TestCase. Chaque méthode publique préfixée par test est un test.

<?php
use PHPUnit\Framework\TestCase;

class CalculatorTest extends TestCase
{
    public function test_addition(): void
    {
        $calc = new Calculator();
        $this->assertEquals(5, $calc->add(2, 3));
    }
}

La classe testée

La classe Calculator testée :

<?php
class Calculator
{
    public function add(int $a, int $b): int
    {
        return $a + $b;
    }
}

Exécution des tests

Exécutez PHPUnit depuis la racine du projet.

$ vendor/bin/phpunit
...
OK (1 test, 1 assertion)

Conventions de nommage des tests

Deux styles sont possibles : test_method_name() (snake_case avec le préfixe test) ou l’annotation @test sans préfixe.

<?php
/** @test */
public function addition_returns_correct_sum(): void
{
    $this->assertEquals(5, (new Calculator())->add(2, 3));
}

Structure des répertoires

Organisation courante : les tests reprennent la structure de src.

src/Calculator.php       → Calculator
tests/CalculatorTest.php → CalculatorTest

setUp() et tearDown()

Exécutez du code avant et après chaque méthode de test. Utilisez setUp() pour créer l’objet testé.

<?php
protected function setUp(): void
{
    $this->calc = new Calculator();
}

public function test_add(): void
{
    $this->assertEquals(7, $this->calc->add(3, 4));
}

setUpBeforeClass() et tearDownAfterClass()

Exécutez du code une seule fois avant et après tous les tests de la classe — ce qui est utile pour une initialisation coûteuse, comme l’établissement de connexions à une base de données.

Couverture du code

Générez un rapport de couverture (Xdebug ou PCOV requis) :

$ vendor/bin/phpunit --coverage-html coverage/

Résumé

Installez PHPUnit comme dépendance de développement avec Composer. Créez une sous-classe de TestCase contenant des méthodes test_*(). Exécutez les tests avec vendor/bin/phpunit. Utilisez setUp() pour créer les objets partagés.

Vérification rapide

De quelle classe de base les classes de test PHPUnit doivent-elles hériter ?

Questions Fréquemment Posées

La leçon « Configurer PHPUnit et écrire son premier test » est-elle gratuite ?

Oui — le texte complet de « Configurer PHPUnit et écrire son premier test » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours PHP Academy, passe à CoddyKit PRO. Le cours PHP Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Configurer PHPUnit et écrire son premier test » ?

Installer PHPUnit via Composer et écrire votre première classe de test. Tu pratiques PHP Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer PHP Academy ?

Aucune expérience préalable n'est requise. PHP Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.

Combien de temps prend la leçon « Configurer PHPUnit et écrire son premier test » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon PHP Academy ?

Oui. Chaque leçon PHP Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Configurer PHPUnit et écrire son premier test
  2. Assertions et méthodes de test
  3. Fournisseurs de données pour les tests paramétrés
  4. Simuler des dépendances avec PHPUnit
← Retour à PHP Academy