Fuzzing: Mozilla automatisiert Hilfen bei komplizierten Bugs
Der Einsatz von automatisiertem Fuzzing macht Fehler oft schwer nachvollziehbar. Mozilla löst das mit Automatisierung.

Der Browserhersteller Mozilla hat in seinem Hacks-Entwicklungsblog ausführlich dargelegt, wie das Unternehmen mit Hilfe des sogenannten Fuzzing Fehler in seinem Code findet und diese behebt. Mit dem Fuzzing wird Software systematisch mit vielen verschiedenen Eingaben genutzt, um dadurch unerwartet auftretende Fehler zu finden. Das Problem dabei sind aber oft extrem komplizierte Fehlerberichte, die das Auffinden und Beheben der Ursache sehr kompliziert machen. Mozilla löst diesen Aspekt wiederum durch eine Automatisierung, um den Prozess weitgehend zu vereinfachen.
In dem Blogeintrag von Mozilla heißt es dazu: "Das Ausführen mehrerer Fuzzers gegen verschiedene Ziele im großen Maßstab generiert eine große Datenmenge. Diese Abstürze sind nicht für den direkten Eintrag in ein Bug-Tracking-System wie Bugzilla geeignet. Wir haben Werkzeuge, um diese Daten zu verwalten und für die Berichterstellung vorzubereiten". Und zu der schieren Größe der erzeugten Testcases schreibt das Team, dass diese üblicherweise Hunderte oder sogar Tausende Zeilen lang seien.
Damit lässt sich aber eben extrem schwer arbeiten. "Unser Ziel ist es, umsetzbare Fehlerberichte zu erstellen, um Probleme so schnell wie möglich zu beheben und gleichzeitig den Overhead für Entwickler zu minimieren", heißt es dazu. Mozilla hat dazu das eigene Werkzeug Gorilla Reduce erstellt, um die Mehrheit der nicht notwendigen Daten zu entfernen und den eigentlichen Fehler so möglichst einfach überprüfbar zu machen. Diese Tests werden mit dem RR-Debugger aufgezeichnet und stehen dann in dem darauf aufbauenden Web-Interface Pernosco bereit.
Diese Kombination "hatte den zusätzlichen Vorteil, seltene, schwer zu reproduzierende Probleme verfolgbar zu machen". Der Test wird dabei so lange ausgeführt, bis der Absturz geschieht, was dann wiederum mit RR aufgezeichnet wird. Erst dann beginnen die Entwickler damit, den Fehler zu untersuchen und zu beheben.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
- ohne Werbung
- mit ausgeschaltetem Javascript
- mit RSS-Volltext-Feed
Kommentieren