Eigene Softwareprojekte automatisch testen

Speaker:

Jörg Schilling (Fraunhofer FOKUS)

Die eigene Software ist fertig, wie finde ich nun die Fehler und verhindere, neue Fehler einzubauen?
Software kann sich anders verhalten als geplant. Sie kann Speicher falsch nutzen und unter bestimmten Umständen sogar abstürzen und ein «core»File erzeugen.
Der Vortrag erklärt, welche Probleme man mit systematischen, handgeschriebenen Tests finden kann, wie man malloc()/free()-Probleme findet und wie man gezielt alle möglichen Pfade im Programm testen kann.
Dabei wird am Beispiel von praktischen Erfahrungen mit den Paketen cdrtools, smake und Bourne Shell erklärt, wie in den letzten 5 Jahren Hunderte von Fehlern gefunden und beseitigt wurden, die teilweise schon seit 40 Jahren vorhanden waren. Auf die dabei verwendeten Methoden Compliance Tests, Address Sanitizer und American Fuzzy Lop wird näher eingegangen und die generelle Nutzung und die Einbindung in das Makefile System erklärt. Erwähnt werden dabei auch Probleme im Address Sanitizer, die eine Nutzung verhindern können.

Desired previous knowledge: UNIX Grundkenntnisse. Grundkenntnisse mit dem Schreiben und Kompilieren von Software.

Audio recording:

Creative Commons Lizenzvertrag Download MP3 (42 MiB) Download OGG (33 MiB)

Video recording:

Creative Commons Lizenzvertrag Download MP4 (1396 MiB)