Building a safe and secure embedded world

Mit Mutationstests die Testfallgüte prüfen

Frank Büchner hält einen Vortrag am 22. September, 14:00 - 14:30 Uhr beim Forum Safety & Security.

Leider implizieren 100% Codeüberdeckung nicht automatisch gute Testfälle. Der Mutationstest jedoch erlaubt die Qualität von Testfällen zu prüfen und gegebenenfalls zu verbessern. Das ist wichtig für sicherheitskritische Software. Beim Mutationstest wird ein Satz von bestandenen Testfällen auf einem mutierten Testobjekt erneut ausgeführt. Mutieren bedeutet, dass die zu testende Software (subtil) verändert wird. Die IEC 61508 nennt den Mutationstest deshalb treffend „Fehlereinpflanzung“ bzw. „error seeding“. Schlägt bei der Wiederholung der Tests mindestens einer der Tests fehl, dann hat dieser Testfallsatz die Mutation aufgedeckt („getötet“).

Falls nicht, ist dies bedenklich und muss geprüft werden. Möglicherweise liegt eine äquivalente Mutation vor, bei der sich das Verhalten des Testobjekts nach außen nicht ändert. Dies muss durch einen Menschen geprüft werden; der dadurch entstehende Aufwand ist die Problematik des Mutationstests.

Der Vortrag stellt das Verfahren des Mutationstests vor und erläutert Begriffe wie starke/schwache Mutation, Kopplungseffekt, die Hypothese des kompetenten Programmierers, Mutationstest im Unterschied zur Fehlerinjektion, adäquater Testfall. Ferner werden Fragen diskutiert wie:

Welche Mutationen sind sinnvoll, welche eher nicht?
Wieso ist die Problematik des Mutationstests bei sicherheitskritischer Software reduziert?
Inwieweit kann der Mutationstest automatisiert werden?
Wie kann eine Mutation ohne einen fehlgeschlagenen Testfall getötet werden?

Hier finden Sie mehr Informationen und die Möglichkeit für das Forum Safety & Security anzumelden.

 

SuchformularKontaktOnlineshop