Code Coverage Niveaus
Der Code Coverage Analyzer Testwell CTC++ deckt alle Testüberdeckungsarten
bis zur Multicondition Coverage (Mehrfachbedingungsüberdeckung) ab.
Testwell CTC++ kann somit in sicherheitskritischen Projekten eingesetzt werden,
welche den Nachweis von Modified Condition/Decision Coverage (MC/DC) für Zertifizierungen wie beispielsweise
nach der "Luft- und Raumfahrt"-Norm DO-178B erfordern.
| Function Coverage
Eintrittsüberdeckung | Function Coverage überprüft welche Funktionen des Quellcodes ausgeführt worden sind. Es wird analysiert, wie oft die Funktion bzw. die die Funktion schließende Klammer erreicht worden ist. Function Coverage ist ein relativ schwaches Testüberdeckungsmaß, gibt aber einen groben Überblick über den Stand der Tests. |
| Decision Coverage
Entscheidungsüberdeckung | Decision Coverage prüft, ob jede Bedingung des Prüflings mindestens einmal wahr und falsch war. Zweigüberdeckung wird erreicht durch Überprüfung ob die Entscheidungen in If-Statements und Loops jeweils als "wahr" und "falsch" ausgeführt worden sind. Es wird gemessen, ob jede Funktion mindestens einmal durchlaufen worden ist, jeder Zweig in einem Switch-Statement ausgeführt wurde, alle Control Transfers (goto, break, continue, return, throw) genommen worden sind und jeder Exception Handler durchlaufen worden ist. Im wesentlichen bedeutet das, daß die von CTC++ gemessene Decision-Coverage-Abdeckung auch Statement-Coverage-Abdeckung (Anweisungsüberdeckung) umfasst. |
| Condition Coverage
Bedingungsüberdeckung | Condition Coverage wird erreicht durch die Kombination von Decision Coverage und der Überprüfung ob die einzelnen Bedingungen auf "wahr" und "falsch" überprüft worden sind. Condition Coverage entspricht dem Decision Coverage mit der Anforderung, daß für Bedingungen zwingend beide Zweige für "wahr" UND "falsch" durchlaufen werden müssen. |
| Modified Condition/Decision Coverage (MC/DC)
Modifizierte Bedingungs-/Entscheidungsüberdeckung | Bei der Modified Condition/Decision Coverage wird eine volle Testüberdeckung nur erreicht, wenn die Entscheidung(Decision) mindestens einmal wahr und falsch war, jede atomare Bedingung mindestens einmal wahr und falsch war sowie für jede atomare Bedingung zwei ausgeführte Testfälle existieren, die sich im Wert (true, false) dieser Bedingung und der ganzen Entscheidung bei gleichen logischen Werten aller anderen atomaren Bedingungen in diesen Testfällen unterscheiden. |
| Multicondition Coverage
Mehrfachbedingungsüberdeckung | Multicondition Coverage entsprichet dem Condition-Coverage mit der zusätzlichen Anforderung, daß jede mögliche Entscheidung, die auf zwei oder mehreren Bedingungen beruht für ihre Auswertung unabhängig gemessen wird. |
weitere Informationen:
Testwell CTC++ Test Coverage Analyzer for C and C++
CTC++ for Java and C# add-on
last updated: 14.11.2008
© 2003-2008 Verifysoft GmbH
CTA++, CTC++, CMT++ and CMTJava are products of Testwell Oy, Tampere (Finland)
CTC++ for Java and C# add on is an add on from Verifysoft Technology GmbH
all other trademarks of this site are the property of their respective owners.