Erhellendes und Erschreckendes über Code Coverage

Die in den gängigen Safety-Standards wie IEC 61508, ISO 26262 oder DIN EN 50128 geforderten Coverage-Maße werden kurz vorgestellt. Näher betrachtet werden daraus die beiden wichtigsten Maße Branch Coverage und Modified Condition / Decision Coverage (MC/DC). Beispiele zeigen, dass Messwerkzeuge die Coverage nicht immer wie in der Literatur beschrieben berechnen (und wieso) und dass unterschiedliche Messwerkzeuge in bestimmten Situationen nicht immer dieselben Ergebnisse liefern (und wieso). Unterschiedliche Programmierung derselben Funktionalität wirkt sich auf die Coverage aus. Was sollte/kann man tun, wenn man nicht 100% Coverage erreichen kann? Hilfen durch Testwerkzeuge oder offizielle und weniger offizielle Vorgehensweisen werden besprochen. Eine erschreckende Studie zur Fehlererkennungsrate von MD/DC wird vorgestellt. Es ist gefährlich, Testfälle aus dem Quellcode abzuleiten. Einige Beispiele zeigen, dass die Bezeichnung der Coverage-Maße nicht einheitlich ist; Vorsicht ist also angebracht. Zwei prinzipielle Probleme der Coverage-Messung (berücksichtigt keine Berechnungen, findet keine Auslassungen) werden aufgezeigt. Einige verbreitete Fehlannahmen werden wiederlegt, beispielsweise, dass man durch Code-Coverage-Messung toten Code finden kann oder dass man bei erreichten 100% gute Testfälle hat. Abschließend gibt es einen Hinweis, wie man die Güte seiner Testfälle tatsächlich prüfen kann.

Frank Büchner
Frank Büchner

Frank Büchner besitzt ein Diplom in Informatik von der Technischen Hochschule Karlsruhe, heute Karlsruher Institut für Technologie (KIT). Seit...

45 Minuten Vortrag

Fortgeschritten
Zeit

12:10-12:55
21. Juli


Themengebiet

Embedded Testing


Raum

München


ID

Di5.2

Zurück

Copyright © 2020 HLMC Events GmbH