Daß man mit Testen Fehler in Programmen finden kann, ist
bekannt. Weniger bekannt ist, daß man durch Testen auch die
_Ursache_ von Programmfehlern finden kann. Die Idee ist
einfach, aber weitreichend: Durch automatisches Testen
verschiedener Konfigurationen wird der Unterschied zwischen
einem funktionierenden und einem fehlerhaften Programmlauf
systematisch eingeengt, bis die Fehlerursache als einziger
Unterschied verbleibt.
Das "Delta Debugging"-Verfahren läßt sich auf eine Vielzahl
von Umständen anwenden - so etwa Code-Änderungen, Eingaben
oder Anweisungen - und wurde an echten Programmen mit echten
Fehlern erfolgreich erprobt. Im Vortrag konzentrieren wir
uns auf fehlerverursachende Programmeingaben - darunter das
Isolieren von HTML-Codes, die den Netscape Navigator
abstürzen lassen.