Dass Projektes OTS4CI erforscht, wie sich die Testauswahl für Softwarekomponenten mithilfe von maschinellem Lernen automatisieren lässt.

Dass Projektes OTS4CI erforscht, wie sich die Testauswahl für Softwarekomponenten mithilfe von maschinellem Lernen automatisieren lässt. (Bild: Who is Danny @ AdobeStock)

In der Softwareentwicklung bestimmen kurze Entwicklungszyklen, komplexe Architekturen und hohe Ansprüche an die Produktqualität das Bild. Um diese Herausforderung zu meistern, nutzt die Industrie Continuous Integration (CI). Dabei werden Softwarekomponenten fortlaufend zusammengefügt und automatisiert über Nacht getestet.

Ein Konsortium bestehend aus  Wissenschaft und Industrie erforscht zwei Jahre lang im Rahmen des Projektes „Optimized Test Selection for Continuous Integration“ (OTS4CI), wie sich dieser Prozess durch eine Optimierung und Automatisierung der Auswahl von Testfällen mithilfe von Techniken des maschinellen Lernens verbessern lässt.

Die zentrale Herausforderung besteht darin, den normalerweise manuell durchgeführten komplexen Prozess der Testauswahl und Priorisierung durch geeignete KI-Methoden abzubilden. Dazu soll die Technik des bestärkenden Lernens (Reinforcement Learning) zum Einsatz kommen. Dieser Ansatz versucht, das Lernverhalten in der Natur nachzubilden. Ein Algorithmus lernt, indem er mit Informationen seiner „Umwelt“ interagiert und anschließend Informationen zum neuen Zustand der Umwelt sowie eine „Belohnung“ erhält. Der Algorithmus, auch Agent genannt, soll dadurch ein Verhalten erlernen, dass die Belohnung maximiert.

KI wählt geeignete Tests aus

Ziel ist die Entwicklung eines KI-Systems, das anhand relevanter Informationen aus der Entwicklung wie etwa Bug Fixes und der Testhistorie eine geeignete Priorisierung derjenigen Tests vornimmt, mit denen sich möglichst viele Fehler beim Testen entdecken lassen. Dabei hilft zum einen ein erweitertes Informationsmodell, das im Entwicklungsprozess anfallende Daten systematisch analysiert und für die Testfallselektion nutzt. Zum anderen entsteht ein Umgebungsmodell des CI-Prozesses. Gefüttert mit Daten aus dem Informationsmodell soll dieses Modell den potenziellen Erfolg einer Auswahl von Testfällen bei der Fehlerfindung simulieren. Diese Auswahl soll anschließend in die Erstellung eines effektiven Testplans durch einen sogenannten Scheduling-Algorithmus münden.

Beteiligte Projektpartner sind die BTU Cottbus-Senftenberg, Kostal Industrie Elektrik mit Sitz in Hagen und ITPower Solutions aus Berlin. Das Projekt ist Teil des Förderprogramms KMU-innovativ des Bundesministeriums für Bildung und Forschung und läuft bis zum 30.09.2024.

Sie möchten gerne weiterlesen?

Unternehmen

SYSGO GmbH

Am Pfaffenstein 8
55270 Klein-Winternheim
Germany