Entwicklung & Design

Erfahrungen aus der Entwicklung von Tine 2.0: Groupware von Grund auf neu

Seite 2 / 5

Wichtig: Tests

Nächster Ausgangspunkt: Wenn eine Software unternehmenskritische Daten verwaltet, muss man ihr uneingeschränkt vertrauen können. Dafür setzt das Tine-2.0-Team auf intensive automatisierte Tests. Als Testframework ist der PHP-Clone von JUnit, PHPUnit, im Einsatz. Die Tests sind in drei Stufen organisiert: In der ersten Stufe werden die Backends getestet. Hier wird sichergestellt, dass alle SQL-Queries, LDAP-Abfragen und File-Zugriffe genau so wie geplant funktionieren. In einem zweiten Schritt werden die Domain-Logik und die Zugriffskontrolle getestet. Diese Tests stellen die Referenz für die interne API dar. Als Letztes werden dann die externen APIs getestet, auf die später der Client zugreift.

Zentraler Ansatz der Entwicklung ist „Test First“. So werden zuerst die Tests geschrieben und darüber die Funktionsweisen der Klasse festgelegt. Erst im zweiten Schritt wird dann die eigentliche Funktion programmiert. Oftmals ist dieser Weg in viele kleine Wiederholungen (Iterationen) unterteilt und übernimmt Aspekte des „Extreme Programming“ in den Entwicklungsprozess.

Durch die Tests ist außerdem die Funktionsweise einer Klasse genau dokumentiert. Merkt man beim Programmieren, dass es eine logische Lücke in einer Klasse gibt oder ihre Funktionsweise nicht klar ist, so wird diese Lücke durch weitere Tests umgehend geschlossen und festgehalten.

Tests geben dabei nicht nur dem Kunden Sicherheit, sondern vor allem auch den Programmierern. Wenn man erstmal eine Weile konsequent mit Tests gearbeitet hat, mag man nicht mehr auf sie verzichten.

Bitte beachte unsere Community-Richtlinien

Wir freuen uns über kontroverse Diskussionen, die gerne auch mal hitzig geführt werden dürfen. Beleidigende, grob anstößige, rassistische und strafrechtlich relevante Äußerungen und Beiträge tolerieren wir nicht. Bitte achte darauf, dass du keine Texte veröffentlichst, für die du keine ausdrückliche Erlaubnis des Urhebers hast. Ebenfalls nicht erlaubt ist der Missbrauch der Webangebote unter t3n.de als Werbeplattform. Die Nennung von Produktnamen, Herstellern, Dienstleistern und Websites ist nur dann zulässig, wenn damit nicht vorrangig der Zweck der Werbung verfolgt wird. Wir behalten uns vor, Beiträge, die diese Regeln verletzen, zu löschen und Accounts zeitweilig oder auf Dauer zu sperren.

Trotz all dieser notwendigen Regeln: Diskutiere kontrovers, sage anderen deine Meinung, trage mit weiterführenden Informationen zum Wissensaustausch bei, aber bleibe dabei fair und respektiere die Meinung anderer. Wir wünschen Dir viel Spaß mit den Webangeboten von t3n und freuen uns auf spannende Beiträge.

Dein t3n-Team

Schreib den ersten Kommentar!