Codeception – BDD Testframework für PHP

Erst habe ich gedacht: „Noch ein BDD-Framework für PHP, ob sich das gegen Behat durchsetzen kann?“, dann habe ich mir Codeception einfach angesehen, um mehr darüber sagen zu können. Den fünf Gründen, warum man Codeception verwenden sollte, wie es deren Blog verkündet, kann ich folgen.

Interessant finde ich vor allem den Punkt 3: „Multi-Framework und Multi-Backend“ – Hier habe ich viele mir bekannte Frameworks wiedergefunden, muss mich also um die Integration gar nicht erst kümmern. Eigentlich hätte man den Punkt auch teilen können, denn auch die Integration unterschiedlicher Backends (Selenium, Sahi und anderen von Mink unterstützten Backends) bietet eine Vielzahl an Möglichkeiten. Dabei fällt natürlich auf, dass Mink Teil von Behat ist. Wenn man es sich genau anschaut, stellt man fest, dass man Codeception eigentlich als Erweiterung zu Behat sehen kann.

Codeception stellt ein einheitliches Framework für Akzeptanz-, Funktions- und Unittests zur Verfügung und bietet damit eine einheitliche Herangehensweise und eine Basis für Synergieeffekte.

Mit dem entsprechenden Aufruf lassen sich die Testsuites dann gezielt aufrufen, z.B. mit:

$ php codecept.phar run acceptance

die Akzeptanztests.

Was mir noch fehlt, ist die Unterstützung verschiedener Sprachen, um Akzeptanztests z.B. beim Kunden in der jeweiligen Sprache ausführen zu lassen. (Bevor ich falsch verstanden werde: Natürlich nur eine Sprache pro Projekt.)

Fazit: Mein tiefergehendes Interesse ist geweckt und ich werde es demnächst einmal ausprobieren – zuerst für die Unittests, dann die Funktionstests und letztlich noch zur Evaluierung des ein oder anderen Akzeptanztests. Dabei fällt mir gerade auf, dass ich hier Akzeptanztests mit Oberflächentests gleichstelle, was natürlich nicht immer der Fall ist.

Schreibe einen Kommentar