Kostenloser Elchtest für Software

Finden die Test-Programme diese Veränderungen nicht, dann sind Andreas Zeller, Professor für Softwaretechnik an der Universität des Saarlandes und der Vater des so genannten Delta-Debuggings, und seine Truppe dem Programm auf die Schliche gekommen. Denn wenn die automatisierten Fehler nicht gefunden werden, dann findet das Programm auch nicht die echten Fehler in der Software.

Wer also die Test-Tools an seinen eigenen Java-Programmen prüfen will, kann das mit dem Javalanche-System, das frei im Internet zugänglich ist. Das Forscherteam um Andreas Zeller, wird das System auf der Cebit 2010 in Hannover vom 2. bis 6. März am saarländischen Forschungsstand (Halle 9, Stand B 43) vorstellen.

Javalanches Aufgabe ist es, Programme möglichst kunstvoll zum Absturz zu bringen. David Schuler, Doktorand an der Universität des Saarlandes, forscht an künstlichen Programm-Fehlern. “Unser Werkzeug erzeugt den ganzen Tag Fehler, wie auch Programmierer sie machen und prüft dann, ob sie vom Test gefunden werden”, erläutert Schuler. Eigentlich sollte ein guter Programm-Test alle Fehler aufspüren. “Findet er aber die künstlichen Fehler nicht, wird er auch die echten, noch vorhandenen Fehler verpassen”, sagt Professor Andreas Zeller, der Leiter des Projektes. Dann müsse der Test auf jeden Fall nachgebessert werden.

Den hohen Wirkungsgrad erreichen die Saarbrücker Forscher, indem sie messen, wie stark die Veränderung ist, die durch die eingestreuten Fehler ausgelöst wird. “Je größer die Veränderung, umso bedeutender ist sie für die Prüfung”, erläutert Zeller. Viele eingestreute Fehler zeigten jedoch keine Wirkung und mussten bisher mühsam von Hand herausgesucht werden, weil sie von Softwaretests nicht gefunden werden konnten. Das Javalanche-Verfahren hingegen entdeckt die Veränderungen, auch Mutationen genannt, ganz automatisch. Bereits vor 30 Jahren wurden Mutationstests erfunden. Bisher waren sie aber auf äußerst kleine Programme von hundert Zeilen und weniger beschränkt. “Unser Javalanche-System prüft Programme, die tausendmal so groß sind wie die bisherigen, bis hin zu großen kommerziellen Java-Programmen”, unterstreicht Professor Zeller.

In Zukunft wollen die Saarbrücker Forscher künstliche Fehler regelrecht züchten. Am Ende sieht Zeller “Super-Mutanten”, die “alles im Programm durcheinander bringen, aber vom Test nicht gefunden werden und so automatisch die größten Schwachstellen beim Testen aufdecken.”

Silicon-Redaktion

Recent Posts

Blick ins Innenleben industrieller KI

Das Europäische Forschungsprojekt XMANAI hat den Blick in die KI geöffnet und macht ihre Entscheidungsprozesse…

58 seconds ago

Wie Hacker Large Language Models für ihre Zwecke nutzen

Hacker nutzen LLM weniger als visionäre Alleskönner-Technologien, sondern als effiziente Werkzeuge zum Verbessern von Standardangriffen,…

14 Minuten ago

Software AG entwickelt KI-gestütztes Process-Mining-Tool

Der "ARIS AI Companion" soll alle Mitarbeitenden darin befähigen, Prozesse zu analysieren und Ineffizienzen aufzudecken.

2 Stunden ago

EM 2024: Fußballfest für Cyberangriffe

Kurz vor der Fußball-Europameisterschaft in Deutschland nehmen die Cyberbedrohungen für Sportfans zu, warnt Marco Eggerling…

2 Tagen ago

CRM: Die Qual der Wahl

Software für das Customer Relationship Management muss passgenau ausgewählt und im Praxistest an das einzelne…

2 Tagen ago

Kubernetes in Cloud-Umgebungen

Ein elementarer Bestandteil einer effektiven Cloud-Strategie ist nach erfolgter Implementierung die künftige Verwaltung des Dienstes.

5 Tagen ago