Ralf Rapude: Tests / Qualitätssicherung - aber wie?

Beitrag lesen

Hallo Andreas,
das Testen von Software ist gerade bei groesseren Projekten sehr wichtig. Da geht man (oder sollte es zumindest) so vor, dass man Code schreibt und parallel dazu auch gleich immer die entsprechenden Tests. Fuer Perls scheints, wenn ich Richard richtig verstanden habe, etwas aehnliches zu geben, wie beim testen von Java Code. Unter Java heisst es JUnit und ist in viele IDEs integriert.
Praktisch siehts da so aus, dass du Testfaelle an Hand von Methoden konstruierst, die deine vorhandene Applikation auf Rueckgabewerte usw. ueberprueft. Dazu werden teilweise automatisch Testmethoden generiert, die du dann nur noch ausfuellen musst. Nach dem Aufruf von JUnit werden die Tests von oben nach unten durchlaufen und es wird eine Art Protokoll ausgegeben, obs an irgendeiner Stelle Probleme gegeben hat und wenn ja, welcher Art die waren.
Ein gutes kurzes und sehr gut nachvollziehbares Tutorial findest du hier:
http://www.frankwestphal.de/UnitTestingmitJUnit.html
Und vielleicht gibts ja auch ein Pendant unter PHP.

Hätte die Verwendung eines Applikations-Servers + Java hier »» »» »» irgendwelche Vorteile?

Auf jeden Fall. PHP habe ich jetzt zwar schon laengere Zeit nicht mehr gemacht und fuer Quickhacks finde ich das auch immer noch ziemlich gut, aber im Vergleich schneidet Java bei mir um Laengen besser ab, besonders wenns um etwas groessere Projekte geht. Zwar kann man auch unter Java ziemlich ekligen Code schreiben, aber was es  IMHO deutlich leichter macht sauber zu coden, ist die Tatsache, dass hinter Java ein Objektorientiertes Konzept steht, waehrend PHP eine prozedurale Script Sprache ist, bei der versucht wurde, die Arbeit mit Objekten im nachhinein zu implementieren. Unter PHP 5 wird sich das ja vielleicht aendern, aber die Sachen, die ich unter PHP 4 ueber Klassen geregelt habe, fand ich deutlich unuebersichtlicher als unter Java.
Ein Applikation Server muss es allerdings nicht gerade sein. Den braucht man fuer die Arbeit mit Enterprise Java Beans und das lohnt sich wirklich erst, wenns um sehr grosse Applikationen geht, die auf jeden Fall skalierbar sein muessen bis zum Abwinken und eine umfangreiche Geschaeftlogik implementieren.

Bei 100 PHP Klassen waere dein Leben aber wahrscheinlich schon deutlich leichter, wenn du dir eine Servlet Engine runterlaedst (Resin oder Tomcat) und mit dem Struts Framework arbeitest, um mal ein paar Stichpunkte zu nennen. Und wenn du Objektorientierung als Konzept verstanden hast, was ja der Fall sein wird, wenn du Klassen unter PHP nutzt, ist der Umstieg auf Java wirklich nicht mehr so schwer. Ist, wie gesagt, ein voellig neuer Horizont, der sich da auftut. Nur nuetzt dir das ja wahrscheinlich nichts mehr fuer das jetzige Projekt. Deshalb, wie gesagt, wuerde ich mich mal bei den PHP Freaks auf den einschlaegigen Seiten umgucken, obs da nicht auch sowas wie ein Test Framework gibt.

Gruss
Ralf