Slider

Ob Tests auf Basis von AdaTEST 95 oder einem externen Testtreiber, das spielt für die Leistungsfähigkeit bei der Codeabdeckung mit AdaTEST 95 keine Rolle.

Wie umfassend war die Testausführung? Welche zusätzlichen Anforderungen lagen dem Test zu Grunde? Wie stabil ist die Software? AdaTEST 95 liefert Fakten!

AdaTEST 95 Codeabdeckung vereinfacht entscheidend:

  • Festzulegen, wie die geforderte Abdeckung gemessen wird
  • Ergebnisse der Codeabdeckung zu prüfen und festzustellen
  • Trends in der erreichten Codeabddeckung zu erkennen
  • Reports und Zertifizierungsnachweise zu generieren

AdaTEST 95 code coverage video

Was bedeutet Codeabdeckung?

Codeabdeckung ist eine dynamische Analysetechnik. Sie misst, welche Teile des Codes beim Test tatsächlich ausgeführt wurden. Die logische Struktur innerhalb des Codes kann mit Hilfe individueller Konstrukte (Syntax-Elemente) gekennzeichnet werden. Strukturelle Codeabdeckungsmetriken dienen dazu, diese individuellen Konstrukte zu messen.

Über die Code Coverage Analyse werden Lücken im Test gefunden, in denen Code nicht durch Requirements basiertes Testen abgedeckt wird.

Code Coverage Analyse wird von allen internationalen Software Safety Standards verlangt. Alle höheren Safety Level erwarten tiefgründige Abdeckungsmetriken.

"Coverage showed us two things: firstly that about 8% of our code was not being reached by the original validation suite. AdaTEST 95 also showed us that certain areas of our code were not even reachable!”

Jose Ruiz, Senior Software Engineer, AdaCore

“Measurement and use of test coverage gave us, for the first time, an objective go/no-go criterion for the acceptance of a unit of code.”

Ian Loughrey, Senior Engineer, BAE Systems

Wobei hilft mir AdaTEST 95 Codeabdeckung?

CODEABDECKUNG MESSEN

Folgende Metriken helfen Ihnen, die Codeabdeckung zu messen. Je nach Standard gibt es unterschiedliche Regelsätze, die die Anforderungen der jeweiligen Codeabdeckungslevels integriert abbilden.

  • Function Entry Points
  • Function Call-Returns
  • Basic Blocks
  • Statements
  • Decisions (branches)
  • Loops
  • Relational Operators
  • Boolean Operators
  • Conditions
  • MC/DC (Unique-cause and Masking variants)

SO FUNKTIONIERT DIE DIAGNOSE DER ABDECKUNGSERGEBNISSE

AdaTEST 95 Diagnostics stellen die Codeabdeckungsdaten in einem HTML-Ergebnis-Viewer dar. Dieser verfügt über:

  • Codelisten in Farbe
  • Eine Navigation (next/previous failure)
  • Detaillierte Daten über die Metrikenausführung

Prüfungen mit AdaTEST 95 Codeabdeckung sind in die Tests integriert. So ist es einfach, die geforderte Codeabdeckung auch tatsächlich umzusetzen. Bei Regressionstests funktioniert das automatisch.
Die Codeabdeckungsprüfungen geben Auskunft:

  • Welcher Anteil (in Prozent) jeder strukturellen Abdeckungsmetrik wurde tatsächlich umgesetzt?
  • Welche Datenwerte (der spezifizierten Variablenwerte) wurden als „immer wahr“ oder „mindestens einmal wahr“ verwendet?
  • Wie verläuft der exakte Ausführungspfad durch den Code?

ABDECKUNGSTRENDS IM BLICK

Wie sind Tests und Abdeckungsprüfungen bisher gelaufen? Wie erfolgreich waren sie? Verbessert sich die Codeabdeckung? All das zeigt AdaTEST 95 HTML Results Overview übersichtlich und klar.

REPORTS ERSTELLEN

Zusätzlich zur leistungsstarken Diagnose der Codeabdeckungsergebnisse im HTML Results Viewer and Overview erstellt AdaTEST 95 Reports (in ASCII-Text). Sie zeigen, wie die Anforderungen bei der Codeabdeckung umgesetzt wurden.

Diese Reports, wie auch die Nachweise für die Zertifizierung, enthalten auch die Ergebnisse, ob und inwieweit die Ziele bei den geforderten Abdeckungsmetriken erreicht wurden.

Wie funktioniert die AdaTEST 95 Codeabdeckung?

AdaTEST 95 arbeitet mit einer Kopie des Source Codes. Die Abdeckungsdaten werden sowohl für die HTML-Grafikdiagnose, wie auch für die zertifizierungsreifen Nachweise in ASCII-Text erfasst.

Die Abdeckungsanalyse kann entweder für AdaTEST 95 genutzt werden oder um die Ausführung anderer Tests zu messen. Aber auch die Daten mehrerer Tests kann man ganz einfach kombinieren.

Noch einfacher ist die Analyse mit Regelsätzen zur Abdeckung. Diese automatisieren die gesamte Code-Instrumentierung, die Datenreports und die geforderte Abdeckungsprüfung – und zwar für alle wichtigen Sicherheitsstandards.