CORDIS - Forschungsergebnisse der EU
CORDIS

Automatic System Testing

Article Category

Article available in the following languages:

Automatisches Testset zur Rationalisierung des Entwicklungsprozesses von Software

Ein neues Tool kann automatisch Testfälle für Softwareanwendungen generieren und so den gesamten Entwicklungsprozess effizienter gestalten.

Digitale Wirtschaft icon Digitale Wirtschaft

Ehe eine Softwareanwendung auf den Markt gebracht werden kann, muss sie zunächst vollständig validiert werden – ein Prozess, der umfangreiche und kostspielige Tests beinhaltet. Es gibt zwar eine Fülle von Tools und Methoden für die automatische Durchführung von Tests auf Einheiten- und Integrationsebene, aber Softwaretests bleiben eine weitgehend manuelle Angelegenheit. Infolgedessen stellen Softwaretests einen kostspieligen Engpass beim Entwicklungsprozess von Software dar. Um hier Abhilfe zu schaffen, hat das EU-finanzierte Projekt AST, dessen Arbeit vom Europäischen Forschungsrat unterstützt wurde, ein vorkommerzielles Tool entwickelt, das effizient und automatisiert Testfälle für Softwareanwendungen generieren kann. „Gegenwärtig müssen Softwareentwickler einen beträchtlichen Teil ihrer Zeit damit verbringen, die Korrektheit der von ihnen entwickelten und gewarteten Anwendungen zu überprüfen“, sagt Leonardo Mariani, Professor an der Universität Mailand-Bicocca und AST-Projektkoordinator. „Durch die schnelle Validierung mehrerer Szenarien stellen automatisierte Testfälle sicher, dass diese Softwareentwickler ihre Zeit für komplexere Fälle nutzen können, die manuell überprüft werden müssen.“

Eine Lösung für automatisiertes Testen

Durch die Verbindung verschiedener Techniken, darunter künstlicher Intelligenz, schuf das Projekt erfolgreich eine Lösung für das automatisierte Testen. „Unsere Lösung für das automatische Generieren von Tests nutzt bestärkendes Lernen, um schrittweise zu lernen, wie sich die zu testende Software verhält“, erklärt Mariani. „Auf der Grundlage dessen, was diese lernt, verbessert sie allmählich die Wirksamkeit der generierten Tests.“ Laut Mariani wird der Lernprozess noch schneller, wenn eine Lösung parallel auf mehreren Maschinen ausgeführt wird. „Wir haben uns auch mit dem Problem befasst, automatisch sinnvolle Eingabewerte zu erhalten, wie etwa den Namen einer realen Adresse, die in eine Anwendung eingegeben werden soll“, fügt er hinzu. „Zu diesem Zweck haben wir eine Lösung geschaffen, welche die vorhandenen Datenbestände, wie Test- und Produktionsdatenbanken wiederverwendet, die normalerweise innerhalb einer Organisation verfügbar sind.“

Ein guter Start für die Testautomatisierung

Als die COVID-19-Pandemie der Projektarbeit einen Strich durch die Rechnung machte, schwenkte das Team schnell um und fand einen Weg, um die Server und die Software per Fernzugriff zu nutzen. „Die Arbeit per Fernzugriff sowie das Abhalten von Besprechungen ausschließlich auf virtuelle Weise ist nicht dasselbe wie die physische Zusammenarbeit“, merkt Mariani an. „Aber wir haben dennoch das erreicht, was wir uns vorgenommen hatten: Nämlich Technologielösungen zu schaffen, die effizient Testfälle für komplexe Webanwendungen generieren.“ Obwohl das AST-Tool einen guten Anfang für die Testautomatisierung darstellt, bleibt noch einiges an Arbeit zu tun. So skaliert das Projektteam das Tool derzeit, damit es an immer komplexeren und größeren Softwaresystemen eingesetzt werden kann. Das Forschungsteam arbeitet außerdem daran, dass das Tool die wachsende Zahl von Problemen erkennt, die während des Testens Auswirkungen auf die Software haben können. „Wir haben unser Wissen im Bereich der Testautomatisierung erweitert und Tools veröffentlicht, die sowohl zur Förderung der Forschung im Bereich Web-Test als auch zur Untersuchung der industriellen Anwendung der automatisierten Generierung von Testfällen eingesetzt werden können“, so Mariani abschließend.

Schlüsselbegriffe

AST, Software, Softwareentwicklung, Softwareanwendungen, Softwareentwickler, Softwareentwicklerin, Softwaretests, künstliche Intelligenz, Testautomatisierung

Entdecken Sie Artikel in demselben Anwendungsbereich