Schulung · Orientierung

Wo sind deine Tests?

Warum heute niemand mehr ohne automatisierte Tests auskommt

Du testest noch nicht automatisiert? In einer Stunde erfährst du, warum das heute nicht mehr gut geht, und warum der Einstieg leichter ist, als du denkst.

  • Umfang 1 Sitzung, 1 Stunde
  • Format Live über Zoom
  • Sprache Deutsch
  • Preis pro Person kostenlos

Worum es geht

Wo sind deine Tests? Wenn du auf diese Frage keine gute Antwort hast, bist du nicht allein. Viele Teams prüfen ihre Software noch immer von Hand: vor dem Release einmal durchklicken, und was durchrutscht, wird hinterher behoben. Das war schon immer riskant, und heute ist es nicht mehr tragbar.

Coding Agents erzeugen in Minuten Code, für den ein Mensch Stunden bräuchte. Wer diesen Code von Hand prüfen will, wird zum Engpass oder lässt die Prüfung weg. Automatisierte Tests halten mit diesem Tempo mit:

  • Sicherheitsnetz. Ein Test meldet sofort, wenn eine Änderung etwas kaputt macht, egal ob ein Mensch oder ein Agent sie gemacht hat.
  • Ausführbare Spezifikation. Ein Test hält fest, was deine Software tun soll.
  • Rückmeldung für Agenten. Ein Coding Agent braucht eine Rückmeldung, ob sein Code funktioniert, und ein Test liefert sie.

Deine Tests musst du heute nicht mehr alle von Hand schreiben. Verstehen und beurteilen musst du sie aber selbst. In dieser Stunde siehst du, was das bedeutet und wo du anfängst. Die Beispiele sind in PHP mit PHPUnit, die Aussagen gelten für jede Programmiersprache.

So läuft die Stunde

Die Stunde ist ein Impuls mit Live-Vorführung, danach ist Zeit für deine Fragen und für Diskussion. Du programmierst nicht mit. Eine Umfrage zu Beginn fragt, wie ihr heute prüft, und die Antworten tragen die Sitzung. Wenn du heute nicht testest, hast du dafür meist Gründe, und auch die kommen zur Sprache.

Die Vorführung zeigt an einem kleinen Warenkorb ohne Tests in PHP mit PHPUnit, was in jeder Sprache gleich ist. Zu den wichtigsten Begriffen erfährst du, wie das entsprechende Werkzeug in anderen Sprachen heißt. Am Ende steht ein erster Schritt, den du auch ohne weitere Schulung gehen kannst.

Ablauf

  1. Sitzung 1: Wo sind deine Tests?

    Woher weißt du, dass deine letzte Änderung nichts kaputt gemacht hat?

    • Wie ihr heute prüft: Durchklicken, Testprotokolle, Hoffnung, und was davon wiederholbar ist und was nicht
    • Was fehlende Tests kosten: Fehler, die erst bei der Kundschaft auffallen, Änderungen und Refactorings, die liegen bleiben, weil niemand weiß, was sie kaputt machen, und Wissen, das nur in einzelnen Köpfen steckt
    • Live vom Durchklicken zum Test: Das machst du längst, nur von Hand. Aus dem var_dump() und der Erwartung im Kopf wird ein Test mit PHPUnit, der den Fehler findet, den Durchklicken übersehen hat
    • Tests im Zeitalter der Agenten: Live schreibt ein Coding Agent Tests, die grün sind. Der Code wird absichtlich gebrochen, und einer der Tests bleibt grün
    • Dein erster Schritt: den nächsten Bugfix mit einem fehlschlagenden Test beginnen oder den Code testen, der als Nächstes geändert wird, und wie es danach weitergeht

    Ergebnis: Eine Begründung, warum dein Projekt automatisierte Tests braucht, und ein erster Schritt für dein Projekt, den du noch in der Stunde notierst

Für wen

  • Entwicklerinnen, Entwickler und Teams, die noch nicht automatisiert testen, in PHP oder einer anderen Programmiersprache
  • Tech Leads und Teamleitungen, die entscheiden, ob und wie ihr Team mit Tests beginnt
  • Alle, die Code von Coding Agents erzeugen lassen und sich fragen, wie sie ihm vertrauen können

Voraussetzungen

  • Keine: Du brauchst weder Vorwissen im Testen noch eine Entwicklungsumgebung

Das nimmst du mit

  • Du weißt, welche Risiken dein Projekt ohne automatisierte Tests trägt
  • Du kannst erklären, was ein automatisierter Test prüft und was nicht
  • Du hast Argumente für das Gespräch mit deinem Team oder deiner Leitung
  • Du kennst deinen ersten Schritt und den Weg danach

Verwandte Schulungen

Diese Schulung ist Teil des Lernpfads Einstieg ins Testen.

Dein Trainer

Sebastian Bergmann beantwortet die Frage eines Teilnehmers am Laptop
Foto: Filip Kovačević

Sebastian Bergmann ist der Schöpfer von PHPUnit, dem De-facto-Standard für das Testen von PHP-Code. Seit 2001 hilft er Teams als Berater und Trainer dabei, wartbare und gut getestete Software zu bauen, seit 2009 als Mitgründer von thePHP.cc.