Lerne mehr über Ruby on Rails mit Martin Labuschins
Ruby on Rails Link Library.
Der folgende Code-Schnipsel ist ein gültiger ausführbarer Test. Ist das nicht wunderbar?
Feature: Manage Comments
In order to have a blog-system
As an administrator
I want to manage comments
Scenario:
Given a comment "Hello World" from "Hans Wurst", "hanswurst@web.de"
When I go to the admin comment list
And I am logged in
Then I should see "Kommentarverwaltung"
And I should see "Hans Wurst" within ".manage_comments"
And I should see "Bearbeiten" within ".manage_comments"
And I should see "Löschen" within ".manage_comments"
Wer mehr über Cucumber erfahren möchte, schaut sich am besten folgende Links einmal an:
David, dass Tests zeitlich gesehen aufwendig sind, ist ein Vorurteil. Sind sie einmal geschrieben, nehmen Tests einem selbst unheimlich viel - nun ja - Testgänge ab.
Im ersten Moment nehmen Tests wirklich viel Zeit in Anspruch. Das holt man aber schnell wieder heraus, weil man sicherer die Website mit weiteren Features bestücken kann ohne die bestehenden Funktionen zu zerschießen.
Man kann sich also innerhalb von Minuten klarmachen, ob die Anwendung das erfüllt, was sie soll und das dann auch noch richtig macht.
Ich konnte mich auch noch nie dazu durchringen, obwohl ich weiss, das ich es sollte ;-)
Dein Beispiel veranlasst mich auf jeden Fall, mich wieder damit auseinanderzusetzen. Vielleicht klappt's ja diesmal *g*
Ich finde Softwaretest sehr praktisch und sie geben mir eine gewisse Sicherheit bei der weiteren Entwicklung einer Anwendung. Bei Anwendungen, wo es keine Tests gibt, passiert es recht oft das nach späterer Zeit noch Fehler bei Funktionen gefunden werden, die eigentlich mal funktioniert haben. Und bei der Entwicklung neuer Funktion die gesamte Anwendung selber durchzutesten, ist wesentlich aufwendiger, als bei der Entwicklung die Tests mitzuschreiben, die dann automatisch ablaufen.
Dominik, ich drücke dir die Daumen, dass es diesmal klappt :)
Christian, kann ich so unterschreiben. Ganz deiner Meinung!
Ich weiss, dass ich Tests schreiben sollte. Ich weiss, dass es eigentlich nur Vorteile bringt.
Aber irgendwie mach ich es dann doch nicht.
Hast du dir schonmal die Frage gestellt, warum du es dann nicht machst? Also welche Gründe bewegen dich dazu, es nicht zu machen?
Für mich war es lange Zeit die Faulheit. Mit dem steigen Wachstum an Komplexität der Web-Apps macht es aber immer weniger Sinn, auf Tests zu verzichten. Zumindest für mich. Zumindest seit knapp einer Woche :)
Naja Faulheit ist es weniger… ich bin manchmal nur frustriert wenn ich ein recht einfaches Feature nicht als Test formuliert bekomme.
Ich versuche aber das aktuelle Projekt auf BDD-Art mit Cucumber zu schreiben.
David
29.09.2009
Ich konnte mich auch nie dazu hinreisen für eigene Anwendungen Softwaretests zu schreiben. Auch wenn Cucumber ziemlich cool aussieht ändert das wohl für mich nichts ;)
Unit Tests sind einfach ziemlich zeitaufwendig und wer hat heute schon zu viel Zeit?
Hie noch ein lesenswerter Artikel zum Thema: "The Duct Tape Programmer" http://www.joelonsoftware.com/items/2009/09/23.html