Zum Inhalt springen

Schlagwort: phpunit

Assertions mal anders

Unittests sollten wir ja alle schreiben und da kommen wir immer an den Punkt, an dem wir auch die Assertions definieren müssen. PHPUnit bietet hierfür einige Methoden an und – zumindest bei mir – findet man meistens assertEquals, assertSame und assertTrue/assertFalse. Aber man kann das ganze auch viel schöner verpacken und dafür gibt es natürlich eine Bibliothek.

Mockery – gut gemockt ist halb getestet

Auch wenn es noch keine ausführliche Beschreibung vom Unittesting gab, möchte ich das Mocking Framework Mockery vorstellen. Ein Mocking Framework nutzt man, um Mock-Objekte zu erstellen. In phpUnit ist solch ein Framework bereits integriert. Mockery ist davon aber getrennt und ist auch etwas anders nutzbar. Ein Mock-Objekt ist nun eine Attrappe oder auch „Dummy“-Objekt. Diese Objekte nutzt man, wenn man beim Testen einer Anwendung bestimmte Objekte nicht erzeugen will oder kann.

PHPUnit – Testklassen automatisch generieren

PHPUnit ist ja ein größeres Thema. Also gibt es jetzt nur einen kleinen Vorgeschmack. Falls sich jemand die Doku angeschaut hat, wird er/sie die Beispiele und die Generierung wiedererkennen und langweilig finden. Ich habe heute diese Funktion aber mal selbst ausprobiert und war ziemlich begeistert, wie toll dies funktioniert.

Eine nervige Arbeit ist immer einen Unittest zu definieren, der eine Methode testet, die mit primitiven Typen umgeht. Man schreibt eigentlich relativ simplen Code und braucht dafür viel Zeit. Das muss aber nicht so sein. PHPUnit kann mir diese Arbeit abnehmen. Ich muss nur ein paar Annotations nutzen, die ich an die entsprechenden Methoden schreibe. Wie passend, dass ich diese im letzten Beitrag bereits erklärt hatte.

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close