Das Rails hervorragend für automatische Tests ausgestattet ist, dürfte hinreichend bekannt sein. Neben den unit- gibt es die functional-, integration- und performance-tests. Die Tests können alle zusammen oder einzeln per rake test:xyz aufgerufen werden. Das ist schon recht komfortabel. Aber es geht noch besser.
Die Unittests können mittels autotest zyklisch durchgeführt werden. Das Programm wird im Wurzelverzeichnis der Anwendung gestartet und führt als erstes alle Unittests durch. Danach überwacht autotest Änderungen an Projektdateien und führt nach erkannten Änderungen die Tests selbständig erneut durch. Dabei werden nur die Tests durchlaufen, die zu den geänderten Dateien gehören. Das ist gerade bei etwas größeren Projekten ein enormer Zeitgewinn. Doch das ist noch nicht genug. Autotest prüft nicht nur welche Dateien geändert wurden, sondern auch welche Methoden innerhalb der Dateien. Und nun ratet mal: Genau; es werden nur die Tests aufgerufen, die zu den geänderten Methoden passen. Perfekt
Dank autotest ist das testgetriebene Entwickeln, oder auf Neudeutsch: Test Driven Development, mit Rails perfekt integriert. Kein lästiges Wechseln auf die Konsole und ein Aufruf von rake test mehr. Das erledigt ab sofort autotest für mich.
Zusammenfassend nochmal die Schritte die nötig sind, um autotest nutzen zu können:
sudo gem install zentest sudo gem install autotest-rails cd /pfad/zu/meinem/railsprojekt autotest
So macht das Entwickeln doch Spaß. Auf das Wesentliche konzentrieren und die Routineaufgaben vom Rechner erledigen lassen. Rails hat mich wieder einmal begeistert



Trackbacks /
Pingbacks