Test- und Qualitätssicherung

Mutationstest – ein Plädoyer für eine vernachlässigte Testtechnik

| Autor / Redakteur: Frank Büchner * / Franz Graser

Der Unterschied zur Fault Injection

Nicht zu verwechseln mit dem Mutationstest ist die Fault Injection, die beispielsweise in der Norm ISO 26262 [2] als Testmethode erwähnt wird. Bei einer Fault Injection bleibt das Testobjekt in seinem Originalzustand, es wird nicht mutiert. Der Fehler wird außerhalb des Testobjekts erzeugt. Wenn das Testobjekt Software ist, wäre beispielsweise das Verändern (Korrumpieren) des Speichers für die Variablen während der Ausführung der Software eine Fault Injection. Die Software liest also aus einer Variablen nicht den Wert zurück, den sie vorher abgespeichert hat. Die Frage ist, ob dies Auswirkungen hat und ob die Software mit einer solchen Situation umgehen kann.

Fault Injection ist also ein Robustheitstest, zum Beispiel bezüglich der Auswirkungen von Bitflips durch kosmische Strahlung. Durch eine Fault Injection kann auch der Programmspeicher des Testobjekts (willkürlich) geändert (korrumpiert) werden. Dies sehen wir jedoch nicht als Mutation, die den Sinn hat, Programmierfehler im Quellcode aufzudecken, sondern vielmehr als Robustheitstest.

Literaturhinweise:

[1] IEC 61508, Teil 3, Tabelle B.2 = Empfehlung Fehlereinpflanzung sowie Teil 7, C.5.6 = Beschreibung Fehlereinpflanzung
[2] ISO/FDIS 26262, Teil 6, Tabelle 10 und Tabelle 13 -> Fault Injection Test[3] Liggesmeyer, Peter: Software-Qualität: Testen, Analysieren und Verifizieren von Software. Heidelberg, Berlin, 2002. Spektrum Akademischer Verlag.
[4] Dirk W. Hoffmann, Software-Qualität. Springer-Verlag Berlin Heidelberg, 2008.[5] Wolfgang Herzner, Rupert Schlick, Harald Brandl, Johannes Wiesalla: Towards Fault-based Generation of Test Cases for Dependable Embedded Software, in Softwaretechnik-Trends, Gesellschaft für Informatik e.V., Band 31, Heft 3, August 2011.[6] A. Jefferson Offut, Clemson University: Investigations of the software testing coupling effect, in: ACM Transactions on Software Engineering and Methodology, New York, Volume 1 Issue 1, Jan. 1992.[7] Tessy: http://www.hitex.de/tessy

* Frank-Büchner ist Diplom-Informatiker und arbeitet als Senior Test Engineer bei Hitex Development Tools in Karlsruhe.

Inhalt des Artikels:

Kommentar zu diesem Artikel abgeben
In der ISO 26262 ist als Beispiel für Fehler auch das Einführen von Codemutation aufgeführt....  lesen
posted am 10.10.2015 um 18:01 von Unregistriert


Mitdiskutieren
copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Kontaktieren Sie uns über: support.vogel.de/ (ID: 33431280 / Software-Test & -Betrieb)