Cantata Logo - unit and integration testing tool for C/C++


Dynamische Analyse
der Codeabdeckung


Wie viel Code haben Sie mit Ihrem Test tatsächlich abgedeckt?

Die Cantata Codeabdeckung kann sowohl zusammen mit Cantata Tests eingesetzt werden, als auch mit jedem anderen externen Testtreiber.


Das Tool ermittelt objektiv, wie komplett der Test ausgeführt wurde. Und ergänzt damit beides, Robustheitstests und Tests auf Basis der Anforderungen.

Was bedeutet Codeabdeckung?

 

Codeabdeckung ist eine dynamische Analysetechnik, die ermittelt, welche Teile des Codes während des Tests ausgeführt wurden. Die logische Struktur innerhalb des Codes kann durch individuelle Konstrukte (Syntaxelemente) identifiziert werden. Mit Hilfe von Codeabdeckungsmetriken wird die Messung dieser Konstrukte aufgezeichnet.


Die Analyse der Codeabdeckung dient dazu, herauszufinden, ob es Lücken gibt, die beim Testen übergangen worden sind. Das kann sowohl die Anforderungen, als auch die Stabilitätskriterien betreffen.

Die Analyse der Codeabdeckung ist deshalb so wichtig, weil ohne sie die internationalen Sicherheitsstandards für Software nicht erfüllt werden können.

Cantata filter code coverage - Coverage Metrics - Projects - Test Cases - Inheritance contexts - User-defined contexts - coverage files

Wobei hilft mir die Cantata Codeabdeckung?

DIE ABDECKUNG MESSEN

 

Beim Messen der Codeabdeckung werden die folgenden Metriken eingesetzt. Dazu dienen standardspezifische Regel-Sets, die die notwendigen Codeabdeckungslevel integriert überprüfen:

  • Function Entry Points
  • Function Call-Returns
  • Basic Blocks
  • Statements
  • Decisions (branches)
  • Loops
  • Relational Operators
  • Boolean Operators
  • Conditions
  • MC/DC (Unique-cause and Masking variants)
Cantata code coverage - Measure Coverage - Function entry points - function call-returns - basic blocks - statements - decisions -loops - relational operators - boolean operators conditions - MC/DC
Coverage results explorer - Cantata diagnostics present coverage from complete project code-trees - pin-pointing gaps and direct test effort efficiently
Coverage results explorer - diagnose coverage results - Cantata diagnostics present coverage from complete project code-trees - pin-pointing gaps and direct test effort efficiently

DIAGNOSE UND ERGEBNISSE

 

Cantata Diagnostics ermittelt die Abdeckung kompletter Code Trees. Das betrifft jede einzelne Codezeile individueller Konstrukte, so dass Lücken in der Codeabdeckung exakt lokalisiert werden können.

 

Die Abdeckung der Testfälle erfolgt automatisch. Die Auswahl der Testfallvektoren wird so erleichtert, das reduziert den Aufwand für Regressionstests. 

ERGEBNISSE FILTERN

 

Cantata verfügt über einen einzigartigen Filter für die Ergebnisse der Codeabdeckung. Dabei stehen zur Wahl:

  • Abdeckungsmetriken
  • Projekte
  • Testfälle
  • Vererbungskontext
  • benutzerdefinierter Kontext
  • Coverage Dateien

Cantata ist auch in der Lage, die Codeabdeckung über individuelle Testfälle nachzuverfolgen.

Cantata unit testing tool screenshot - code coverage view filtered by test case

REPORTS GENERIEREN

 

Cantata erstellt flexible, frei konfigurierbare Reports in XML, HTML und (für die spätere Zertifizierung) in ASCII-Text. Das gibt es zusätzlich zu den Ergebnissen der Codeabdeckung innerhalb der Eclipse-GUI.


In die Reports und Zertifizierungsnachweise sind die Prüfungen eingebunden, inwieweit die vorab definierten Ziele der Codeabdeckung erreicht worden sind.

Cantata diagnosing and reporting - Using Eclipse for diagnostics and for C/C++ testing results and reporting - reports in RTF, XML, HTML and ASCII text

Wie arbeitet die Cantata Codeabdeckung?

How does cantata Code Coverage work Chart - Use of instrumentation on a copy of the source code - Coverage analysis can be used integrated with Cantata tests or used to measure execution

Die Cantata Codeabdeckung arbeitet (via GUI oder CLI) an einer Kopie des Quellcodes. Die Abdeckungsdaten werden sowohl für die grafische Diagnose, als auch für den Nachweis der Zertifizierung aufgezeichnet.


Die Abdeckungsanalyse kann nicht nur als integraler Bestandteil der Cantata Tests verwendet werden. Ebenso ist es möglich, die Ergebnisse anderer Tests zu analysieren – selbst unterschiedliche Tests lassen sich ganz einfach miteinander kombinieren.


Die Cantata Codeabdeckung bietet kundenspezifische Regel-Sets für die Codeabdeckung. Das macht die Analyse so einfach. Denn alles, was die wichtigsten Sicherheitsstandards fordern, wird hochautomatisiert zur Verfügung gestellt: die komplette Codeinstrumentierung, das Daten-Reporting und die Codeabdeckungschecks.

Start
Trial
QA-Systems