An allen Ecken und Enden wird derzeit über automatisiertes Software Testing gesprochen, vor allem wenn es um die Steigerung von Qualität von Software geht, führt wenig an diesem Thema vorbei.
Als angehender Entwickler weißt du bereits wie wichtig Tests für deine Software sind! Richtig? Wenn nicht lass dir gesagt sein, solltest du keine Tests schreiben wirst du in Schwierigkeiten bekommen. Vielleicht nicht zum Zeitpunkt der Fertigstellung des Projektes, aber spätestens, wenn das Stück Software, dass du geschrieben hast, gewartet oder erweitert werden muss. Die Wahrscheinlichkeit für Probleme steigt noch stärker, wenn mehrere Entwickler an dem Projekt arbeiten. Musst du dann Änderungen vornehmen funktionieren andere Teile der Software vielleicht nicht mehr, ohne dass du es merkst. Im schlimmsten Fall merkt es jemand anderes. Und das sind Situationen, die wohl keiner gerne durchlebt.
Wie kann man diese Situationen nun vermeiden? Durch Tests. Genauer: durch automatisierte Tests, die nach jeder Änderung am Code gestartet werden und alles neu hinzugekommene und bereits vorhandene in den verschiedenen Klassen testen.
Einen guten Anfang für automatisierte Tests bilden Unittests. Dies sind Tests die genau eine Funktion einer Klasse testen. Ziel ist die Sicherstellung, dass diese alleine funktionieren und in verschiedenen Fällen das jeweils korrekte, erwartete, Ergebnis liefern.
Unittests erfüllen deshalb die folgenden Eigenschaften:

  • Mit Unittests wird Code isoliert getestet von anderem Code in der Applikation sowie von externen Abhängigkeiten und Events.
  • Unittests sind wiederholbar und vorhersehbar. Das bedeutet ändert sich nichts am Code oder dem Test selbst wird das Ergebnis auch immer gleichbleiben.
  • Unittests sind unabhängig, sie funktionieren egal in welcher Reihenfolge sie Aufgerufen werden. Muss eine Reihenfolge eingehalten werden, ist bei der Implementierung etwas falsch gelaufen.

Neben Unittests gibt es auch andere Tests die automatisiert werden können. Dazu gehören unter anderem Integrationstest und UI-Tests.
Welche Tests sind nun am wichtigsten? Alle sind wichtig. Ein guter Anfang sind Unittests und wichtig beim automatisierten Testen ist es einfach anzufangen. Mit der Zeit wird das Formulieren und Schreiben von Test immer einfacher und schneller gehen. Die Qualität eures Codes wird steigen und die Projekte insgesamt etwas besser laufen.

Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.