Code, der globale Variablen enthält, ist schwer zu testen. Wie man einen Test zumindest unter PHPUnit dennoch zum laufen bekommt, zeigt Sebastian Bergmann in seinem Blog.
Dabei kommen serialize() und unserialize() zum Einsatz, was allerdings bei manchen Klassen, wie zum Beispiel PDO, zu Problemen führen kann. Hier müssen dann die Backup- und Restore-Operationen zur Isolierung der globalen Variablen manuell abgeschaltet werden.
Wie das im Detail aussieht, können Sie in Sebastians Blog nachlesen.



