0Pricing
PHP Academy · Lektion

PHPUnit einrichten und den ersten Test schreiben

Installieren Sie PHPUnit über Composer und schreiben Sie Ihre erste Testklasse.

PHPUnit einrichten und den ersten Test schreiben ist eine kostenlose PHP Academy-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des PHP Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der PHP Academy-Kurs umfasst insgesamt 4 Lektionen.

Was ist PHPUnit?

PHPUnit ist das Standard-Unit-Test-Framework für PHP. Damit können Sie automatisierte Tests schreiben, die einzelne Codeeinheiten isoliert überprüfen.

PHPUnit installieren

Installieren Sie PHPUnit über Composer als Entwicklungsabhängigkeit.

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

Konfiguration mit phpunit.xml

Erstellen Sie eine Datei phpunit.xml, um die Testsuite zu konfigurieren.

<?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>

Eine Testklasse schreiben

Erweitern Sie PHPUnit\Framework\TestCase. Jede öffentliche Methode, die mit test beginnt, ist ein 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));
    }
}

Die zu testende Klasse

Die Calculator-Klasse, die getestet wird:

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

Tests ausführen

Führen Sie PHPUnit im Stammverzeichnis des Projekts aus.

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

Konventionen für Testnamen

Zwei Möglichkeiten: test_method_name() (snake_case mit dem Präfix test) oder die Annotation @test ohne Präfix verwenden.

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

Verzeichnisstruktur

Üblicher Aufbau: Die Tests spiegeln die src-Struktur wider.

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

setUp() und tearDown()

Führen Sie Code vor bzw. nach jeder Testmethode aus. Verwenden Sie setUp(), um das zu testende Objekt zu erstellen.

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

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

setUpBeforeClass() und tearDownAfterClass()

Führen Sie Code einmal vor bzw. nach allen Tests der Klasse aus – beispielsweise für aufwendige Vorbereitungen wie Datenbankverbindungen.

Codeabdeckung

Erstellen Sie einen Bericht zur Codeabdeckung (erfordert Xdebug oder PCOV):

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

Zusammenfassung

Installieren Sie PHPUnit als Dev-Abhängigkeit über Composer. Erstellen Sie eine TestCase-Unterklasse mit test_*()-Methoden. Führen Sie die Tests mit vendor/bin/phpunit aus. Verwenden Sie setUp() zum gemeinsamen Erstellen von Objekten.

Schnelltest

Von welcher Basisklasse müssen PHPUnit-Testklassen erben?

Häufig gestellte Fragen

Ist die Lektion „PHPUnit einrichten und den ersten Test schreiben“ kostenlos?

Ja — der vollständige Text von „PHPUnit einrichten und den ersten Test schreiben“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des PHP Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der PHP Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „PHPUnit einrichten und den ersten Test schreiben“?

Installieren Sie PHPUnit über Composer und schreiben Sie Ihre erste Testklasse. Du übst PHP Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um PHP Academy zu starten?

Keine Vorkenntnisse erforderlich. PHP Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.

Wie lange dauert die Lektion „PHPUnit einrichten und den ersten Test schreiben“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser PHP Academy-Lektion Code schreiben und ausführen?

Ja. Jede PHP Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. PHPUnit einrichten und den ersten Test schreiben
  2. Assertions und Testmethoden
  3. Datenprovider für parametrisierte Tests
  4. Abhängigkeiten mit PHPUnit mocken
← Zurück zu PHP Academy