Qualitätsmanagement bei form4

Testautomatisierung

Moderne Software ist modular

Moderne Business-Software wird in Modulen entwickelt. Das hat viele Vorteile.

  • Die Module sind einzeln planbar.
  • Sie durchlaufen einzeln den Prozess von Spezifikation, Entwicklung und Test.
  • Einzelne Module sind möglicherweise wiederverwendbar, müssen also für ähnliche Anwendungsfälle nur geringfügig erweitert oder generalisiert werden.
  • Schließlich kann die Entwicklung verschiedener Module - ausreichend Ressourcen vorausgesetzt - parallelisiert werden.
  • Ändern sich die Anforderungen im Laufe der Zeit, müssen nur einzelne Module angepasst werden.

All das spart Zeit und Geld. Es stellt aber auch neue Herausforderungen.

An Schnittstellen programmieren

Die Module eines Projektes bedienen die Funktionalität darunterliegender Module und stellen ihrerseits die eigene Funktionalität den darüberliegenden Modulen zur Verfügung. Genau hier setzt die Testautomatisierung an.

In der Testautomatisierung läuft das Modul nicht in der fertigen Software, sondern in einer Art Laborumgebung. Die Eingaben kommen nicht von Benutzern, sondern von speziell für diesen Zweck geschriebenen Testprogrammen.

Entspricht die Reaktion des Moduls dem spezifizierten Verhalten, ist der Test bestanden. Bei Abweichungen hat man einen Fehler erkannt.

Automatisierte Test laufen regelmäßig

Da diese Tests automatisiert ablaufen, werden sie im Zuge der Continuous Integration vollautomatisiert regelmäßig wiederholt. Nach jeder Änderung an der Software läuft eine ganze Batterie von Tests ab und sichert so die Entwicklung gegen erwartete und vor allem gegen unerwartete Risiken durch nicht beabsichtigte Seiteneffekte ab.