Helfer
DomQuery
Tester\DomQuery
erweitert SimpleXMLElement
um eine einfache HTML- oder XML-Abfrage mit
CSS-Selektoren.
FileMock
Tester\FileMock
emuliert Dateien im Speicher, um Ihnen zu helfen, einen Code zu testen, der Funktionen wie
fopen()
, file_get_contents()
oder parse_ini_file()
verwendet. Zum Beispiel:
Assert::with()
Dies ist keine Behauptung, sondern ein Hilfsmittel zum Testen privater Methoden und Eigenschaftsobjekte.
Helpers::purge()
Die Methode purge()
erstellt das angegebene Verzeichnis und löscht, falls es bereits existiert, seinen gesamten
Inhalt. Sie ist praktisch für die Erstellung temporärer Verzeichnisse. Zum Beispiel in tests/bootstrap.php
:
Environment::lock()
Tests laufen parallel. Manchmal ist es notwendig, dass sich die Testläufe nicht überschneiden. Typischerweise müssen
Datenbanktests den Datenbankinhalt vorbereiten und dürfen während der Laufzeit des Tests nicht gestört werden. In diesen
Fällen verwenden wir Tester\Environment::lock($name, $dir)
:
Das erste Argument ist der Name einer Sperre. Das zweite Argument ist ein Pfad zum Verzeichnis, in dem die Sperre gespeichert wird. Der Test, der die Sperre erwirbt, wird zuerst ausgeführt. Die anderen Tests müssen warten, bis er abgeschlossen ist.
Environment::bypassFinals()
Klassen oder Methoden, die als final
gekennzeichnet sind, sind schwer zu testen. Der Aufruf von
Tester\Environment::bypassFinals()
in einem Testbeginn bewirkt, dass die Schlüsselwörter final
beim
Laden des Codes entfernt werden.
Environment::setup()
- verbessert die Lesbarkeit von Fehlerdumps (mit Farbgebung), ansonsten wird der Standard-PHP-Stacktrace ausgegeben
- ermöglicht die Überprüfung, ob Assertions im Test aufgerufen wurden, ansonsten werden auch Tests ohne (z.B. vergessene) Assertions bestanden
- startet automatisch den Code Coverage Collector, wenn
--coverage
verwendet wird (später beschrieben) - gibt am Ende des Skripts den Status OK oder FAILURE aus
Environment::setupFunctions()
Erzeugt die globalen Funktionen test()
, testException()
, setUp()
und
tearDown()
, in die Sie Tests aufteilen können.
Environment::VariableRunner
Ermöglicht es Ihnen herauszufinden, ob der Test direkt oder über den Tester ausgeführt wurde.
Environment::VariableThread
Tester führt Tests parallel in einer bestimmten Anzahl von Threads aus. Die Anzahl der Threads finden wir in einer Environmentsvariablen, wenn wir daran interessiert sind: