Roboter, der Code überprüft und freigibt.

Automatisierte Softwaretests ersparen in der Softwareentwicklung Zeit für nachträgliche Fehlersuchen, verhindern Unzufriedenheit bei den Usern, können viel Geld sparen und sind eine Voraussetzung für agile, inkrementelle Entwicklung. Zudem lassen sie sich noch nachträglich in Entwicklungsprojekte integrieren.

Vorteile automatisierter Akzeptanztests

Software wird heutzutage meist kontinuierlich weiterentwickelt. Entweder, weil neue Funktionen hinzukommen oder geändert werden oder, weil verwendete Komponenten wie Frameworks und Bibliotheken aktualisiert werden müssen, etwa um Sicherheitsvorgaben zu erfüllen.

Aber jede Weiter­entwicklung birgt die Gefahr Fehler zu enthalten oder unerwünschte Auswirkungen auf die bisherigen Funktionen zu haben. Das führt dann zu Einschränkungen der Produktivität von Nutzern sowie Systemen und kann aufwändige Fehlersuchen und -lösungen nach sich ziehen.

Automatisierte Akzeptanz­tests garantieren, dass nach Erweiterungen oder Änderungen alle Prozesse reibungslos funktionieren und die gewünschten Ergebnisse liefern. Sie sind daher unverzichtbar für eine agile und inkrementelle Entwicklung.

Dabei haben sich Softwaretests in den letzten Jahren und Jahrzehnten stark weiterentwickelt. Die Zeiten, in denen Software bei der Auslieferung durch den Kunden einmal komplett getestet wird, und das mitunter noch manuell, sind längst vorbei. „Akzeptanztest“ bedeutet heute Software von Ende zu Ende zu testen – also von den Nutzer­eingaben bis zur Abfrage der entsprechenden gewünschten Ergebnisse. Und das automatisiert nach jeder Änderung, bevor diese in den Produktivbetrieb übernommen werden.

Im Idealfall errichtet man entsprechende Testlandschaften gleich zu Beginn der Software­entwicklung, aber es ist auch möglich, automatisierte Akzeptanz­tests nachträglich zu erstellen, auch wenn es aufwändiger ist als während der Entwicklung. Unsere Erfahrung zeigt, dass dies lohnenswert ist, da so Nutzer­unzufriedenheit und Reibungsverluste vermieden werden und Sicherheitsrisiken mit der Möglichkeit schneller Updates beherrschbarer werden.

Wie funktionieren automatisierte Akzeptanztests?

Anstatt Testfälle manuell durchzuführen, simuliert eine Testsoftware die Nutzer­eingaben in der Weboberfläche oder spricht gezielt APIs an. Das geht sehr viel schneller als manuelle Tests und garantiert einen reproduzierbaren Testablauf.

Die automatisierten Tests werden automatisch ausgelöst, wenn Änderungen in Ihr Produktivsystem eingespielt werden (Regressionstests), sie können manuell gestartet oder regelmäßig selbstständig ausgeführt werden.

Abweichungen von den erwarteten Ergebnissen werden protokolliert und zusammen mit Screenshots an das Entwicklungs­team weitergeleitet, damit es gezielt nach Fehlern suchen und diese beheben kann.

Dadurch sind gut geschriebene Akzeptanz­tests gleichzeitig eine hervorragende Dokumentation zur Nutzung des Systems, denn sie bilden üblicherweise Use Cases ab und können von Mitarbeitern der Fachabteilung verstanden werden. Damit liefern sie gleich Anleitungen und Erläuterungen zu Zusammenhängen.

Automatisierte Tests erlauben auch die Ausführung der Software auf verschiedenen Displaygrößen, wie Desktop, Tablet oder Mobiltelefon. Man kann auch bestimmte Browserversionen, Geräte oder Betriebssysteme vorgeben. Die Tests nutzen dann Geräte, die von Cloud Providern zur Verfügung gestellt werden.

Komplexe Systeme benötigen mehr als nur eine Testsoftware. Wenn Sie beispielsweise eine Beauftragung in einem Buchungssystem testen wollen, dann wird dieses mit nachgelagerten Systemen sprechen wollen. Die nachgelagerten Systeme müssen entweder passend provisioniert werden oder sie werden für den Testfall durch einen Simulator ersetzt. Auch diese Simulatoren gehören zur Testumgebung. Simulatoren erlauben auf einfache Weise komplexe Zusammenhänge und Fehlerzustände (z.B. System antwortet nicht) zu erzeugen und somit zu testen.

Beispielhaftes Schaubild einer Testumgebung für eine Buchungssoftware.
Beispiel einer Testumgebung für ein Buchungssystem.

Welche Leistungen bietet cronn bei automatisierten Akzeptanztests an?

Unsere Softwareentwickler und Testautomatisierer

  • übernehmen die Aufgabe der Testfallerstellung während der Entwicklung oder
  • erstellen Tests nachgelagert und/oder
  • beraten Sie und erstellen für Ihr System oder Ihr Projekt das Testkonzept
  • erstellen die benötigten Simulatoren oder Werkzeuge zum Provisionieren vorhandener Softwaresysteme, um realitätsnahe Testszenarien zu erstellen
  • überführen vorhandene Tests, die mit wartungsintensiven oder lizenzpflichtigen Werkzeugen erstellt wurden, in neue lizenzgebührenfreie Open-Source-Tools

In allen Fällen ist es für uns wichtig, Ihr Softwaresystem, Ihre Geschäftsprozesse und die Anforderungen vollständig zu verstehen.

Dank unserer automatisierten Akzeptanz­tests können Sie sich auf zufriedenere Benutzer und einen geringeren Supportaufwand verlassen. Probleme in der Funktionalität werden automatisch erkannt, sodass Ihr Entwicklungs­team gezielt nach Lösungen suchen kann. Dadurch sparen Sie Zeit und Ressourcen für die Weiter­entwicklung Ihres Produkts.

Wir entwickeln seit 2013 Software mit automatisierten Akzeptanz­tests und stehen Ihnen mit unserer Expertise zur Seite.

Fragen zum Thema? Wir sind für Sie da!

* Pflichtfeld