plan08 - Agentur für neue Medien
kontakt | impressum
eBusiness Akademie - Erfolgschance Internet
Wörterbuch
In unserem Online Wörterbuch erklären wir nicht nur die Bedeutung der Wörter aus IT und Wirtschaft, sondern versuchen auch immer einen Bezug zum eBusiness herzustellen und Ihnen Tipps zu geben, wie Sie Produkte, Systeme und Techniken nutzen, um Ihr eBusiness zu verbessern.

PHPUnit

Social Bookmarking:
Bookmark bei: Mr. Wong Bookmark bei: Webnews Bookmark bei: Linkarena Bookmark bei: Yigg Bookmark bei: Digg Bookmark bei: Del.icio.us Bookmark bei: Slashdot Bookmark bei: Netscape Bookmark bei: Furl Bookmark bei: Yahoo Bookmark bei: Technorati





eTipp
1 von 2 Personen fanden diesen Tipp hilfreich

Bei der Verwendung von PHPUnit in einem größeren Projekt muss man sich vor Beginn der Entwicklung im klaren sein, wie man seine Tests strukturiert. Es gibt Ansätze, bei denen die Test Bestandteil der zu testenden Klassen sind. Dieser Ansatz hat den Vorteil, dass auch private Methoden Einheitentests unterzogen werden können. Aber will man dies überhaupt. Ziel von automatisierten Tests ist es, dem System eine Stabilität zu geben, die es ohne dies nicht ausweisen würde. Man betrachtet das System also eher als Ganzes. Sollte eine private Methode nicht mehr so mit Daten umgehen wir vorher, aber alle Schnittstellen nach außen agieren wie gewohnt, so sollte das ganze System nichts an Stabilität dadurch verloren haben. Ein weiterer Nachteil, falls man sich entscheidet die Test in die Klassen einzubetten, ist der Overhead, der erzeugt wird. Sie schleppen diese Testmethoden bei jeder Instanz ihrer Klasse als unnötigen Ballst mit, obwohl diese Tests beim Produktiveinsatz nicht mehr benötigt werden.

Unittests testen also nur die Klassen von außen und befinden sich deshalb auch nicht in der Klasse selbst. Aber wie strukturiert man diese Tests? Ein guter und bewährter Ansatz ist die Ausgliederung in ein eigenes Verzeichnis. Dort wir das Testsystem wiederum in zwei Verzeichnisse aufgespalten. Das erste Verzeichnis beherbergt die kompletten TestCases. Diese werden identisch der Projektstruktur abgelegt. Existiert also eine Datei 'includes/SessionHandler.php“, so wird konform der Regeln eine Datei unter „testframeowrk/testcases/includes/SessionHandlerTest.php“ abgelegt. Peu a peu sollte sich so das testcases Verzeichnis der Struktur des Projektes anpassen.

Das zweite große Verzeichnis beinhaltet die Testsuiten. Diese bestehen aus mehreren TestCases, die thematisch zusammen gehören, kann aber auch einzelne TestSuiten enthalten. Dabei sollte es eine TestSuite geben, die alle TestCases beinhaltet. Diese Testsuite wird dann in zyklischen Abständen aufgerufen um somit sicherzustellen, dass die Codestabilität beibehalten wird.


War dieser Tipp hilfreich?   


Dieser Tipp wurde bereitgestellt von
Nils Langner
Herr Langner arbeitet bei
plan08 - Agentur für neue Medien
 
Abonnieren    


eBusiness Akademie - Erfolgschance Internet