Neunzehn Jahre CRAP
Der CRAP-Index steckt seit 2007 im Code Coverage-Bericht von PHPUnit; damals experimentell, bis heute nicht validiert. Warum ich ihn trotzdem ausliefere und warum er nie zum Ziel werden darf.
Weiterlesen
Der CRAP-Index steckt seit 2007 im Code Coverage-Bericht von PHPUnit; damals experimentell, bis heute nicht validiert. Warum ich ihn trotzdem ausliefere und warum er nie zum Ziel werden darf.
Weiterlesen
Flaky Tests zuverlässig erkennen und kontrolliert tolerieren, Code Coverage aus Sicht deiner Klassen, sichtbar gemachte Branch und Path Coverage und ein Filter nach Testgröße: Ich zeige dir, was es Neues in PHPUnit 13.3 gibt.
Weiterlesen
Mein liebster Bugfix fügt nur einen neuen Regressionstest hinzu und fasst keinen bestehenden Test an. Ich habe diese Behauptung an der Geschichte von PHPUnit überprüft: Am meisten gelernt habe ich von den Gegenbeispielen.
Weiterlesen
Genau die Tests auswählen, die du brauchst, mehr Kontrolle über ihre Reihenfolge, schnellere und klarere Ausgaben bei Fehlschlägen und ausdrucksstärkere Test Doubles: Ich zeige dir, was es Neues in PHPUnit 13.2 gibt.
Weiterlesen
Das Zusammenführen von Code Coverage-Daten aus parallelen CI-Jobs war lange schwierig und fehleranfällig. Diese Probleme sind jetzt endlich gelöst.
Weiterlesen
PHPUnit weiß bei jedem Lauf, wie lange jeder Test dauerte, wie viel Speicher er belegte und warum er scheiterte. Das meiste davon verpufft. otr-report liest diese Daten aus der Open-Test-Reporting-Logdatei zurück und macht sie nutzbar.
Weiterlesen
Langsame Tests bremsen den Arbeitsfluss, machen TDD zunichte und untergraben das Vertrauen, bis schließlich niemand mehr die Testsuite ausführt. Die Lösung umfasst vier Ebenen, und die größten Vorteile ergeben sich aus dem Testdesign, nicht aus der Infrastruktur oder der Parallelisierung.
Weiterlesen
Closures als Data Provider, umfassenderes Open Test Reporting, benutzerdefinierte Issue Trigger Resolver und wichtige Änderungen bei Code Coverage: Ich zeige dir, was es Neues gibt.
Weiterlesen
Der any() Matcher ist deprecated. Aber die Migration ist einfacher, als du denkst – und führt zu besseren Tests.
Weiterlesen
Ich zeige dir, wie die Parameter Set Matcher von PHPUnit 13 endlich das Problem lösen, das das Upgrade auf PHPUnit 10 zu einer solchen Herausforderung gemacht hat.
Weiterlesen
Sich selbst sabotierende Mock Objects? Mit PHPUnit 12.5 gehört das der Vergangenheit an, denn der Test Runner schaut dir jetzt über die Schulter und stellt die richtige Frage: Brauchst du wirklich ein Mock Object, oder reicht ein Test Stub?
Weiterlesen
Warum die Unterscheidung zwischen Test Stubs und Mock Objects in PHPUnit die Qualität und Lesbarkeit von Tests deutlich verbessert.
Weiterlesen
Finde heraus, wie PHPUnit 12.4 dir dabei hilft, mit weniger Aufwand und mehr Einblicken ans Ziel zu kommen.
Weiterlesen
Entdecke die versteckten Fähigkeiten von PHPUnit und lerne, wie du mit cleveren Features das Maximum aus deinen Tests herausholst.
Weiterlesen
Erfahre, wie die Zusammenarbeit mit echten Entwickler:innen die neuesten Verbesserungen in PHPUnit 12.3 beeinflusst hat.
Weiterlesen
Ich berichte meine Erfahrungen vom letzten Code-Sprint des PHPUnit-Projekts.
Weiterlesen
Ich reflektiere darüber, warum ich keine setUp()-Methoden mehr schreibe.
Weiterlesen
Bei der Arbeit an PHPUnit bin ich auf ein interessantes Problem gestoßen.
Weiterlesen
Die lange Geschichte einer Sicherheitslücke, die keine hätte sein müssen.
Weiterlesen
Im Spannungsfeld zwischen Rückwärtskompatibilität und Fortschritt darf eine gute Developer Experience nicht zu kurz kommen.
Weiterlesen
Tests auf Knopfdruck ausführen ist eine tolle Sache. Das Testwerkzeug auf Knopfdruck aktualisieren klingt ebenfalls vielversprechend - oder vielleicht doch nicht?
Weiterlesen
Best Practices sind nicht in Stein gemeißelt und müssen von Zeit zu Zeit hinterfragt und gegebenenfalls angepasst werden.
WeiterlesenJeden Mittwoch erscheint ein neuer Artikel. Abonniere den RSS-Feed, und er landet direkt in deinem Feedreader.
Mit dem Newsletter erhältst du alle zwei Monate eine umfassende Analyse neuer PHPUnit-Funktionen, Implementierungsdetails sowie der strategischen Überlegungen hinter jeder Verbesserung per E-Mail.