08 August 2018
Von Melkmaschinen bis hin zum Airbus: Code Coverage für C, C++, Java und C# messen - mit nur einem Werkzeug.
Von Melkmaschinen bis hin zum Airbus - heutzutage ist Software überall.
Um die Qualität zu verbessern, muss die Software getestet werden. Code Coverage zeigt den Umfang der Tests.
Die Messung der Code Coverage in den Bereichen Automotive, Schienenverkehr, Luft-/Raumfahrt und anderen sicherheitskritischen Industrien ist verpflichtend durch Standards wie ISO 26262, DO-178C, EN 50128. Aber auch für anderweitige Applikationen ist Code Coverage sehr empfehlenswert, um eine gute Codequalität zu erreichen.
Einige Unternehmen nutzen Testwell CTC++ um die Code Coverage zu messen.
Die Konformität mit Sicherheitsstandards ist nur einer der Gründe für die Verbreitung von Testwell CTC++ Test Coverage Analyzer, darüber hinaus gibt es zahlreiche weitere Gründe für die Nutzung dieses Werkzeugs.
Warum haben sich die Unternehmen für Testwell CTC++ entschieden, anstelle von anderen Coverage Tools?
Lassen Sie uns die Gründe im Detail untersuchen. Zu diesem Zweck haben wir umfangreiche Umfragen unter unseren Kunden durchgeführt und kamen zu einem klaren Ergebnis.
Ein Code Coverage Tool zu haben, dass mit den Sprachen C, C++, Java, und C# funktioniert ist einer der Gründe.
Unternehmen, die Software Applikationen in allen vier Sprachen haben, bevorzugen es ein Tool mit durchgehend einheitlichen Berichten in ihrer Entwicklung einzusetzen.
Bezugnehmend auf einheitliche Berichte: Es gibt Unternehmen, die im Laufe ihrer Historie verschiedene Unit Test Tools in unterschiedlichen Teams benutzt haben.
Wie findet man einen gemeinsamen Nenner?
Testwell CTC++ ist die Antwort. Ganz gleich welches Unit Test Tool das Team benutzt, können alle Ergebnisse zügig in einem für Menschen lesbaren HTML-Report von Testwell CTC++ gesammelt werden. Die Geschwindigkeit dieses Berichts ist somit überaus erwähnenswert.
Man stelle sich vor, ein Unternehmen beginnt seine Embedded Software in C zu entwickeln. Sie entscheiden sich Code Coverage für C in diesem Fachbereich zu nutzen (Bereich A). Ein anderer Fachbereich (Bereich B) entwickelt in C# und entscheidet sich für ein eigenes Coverage Tool, da das erste lediglich für C und C++ funktioniert. Die Anwendungsentwicklung in Java wird später in einem weiteren Fachbereich (Department C) angegangen. Ein drittes Code Coverage Tool wird erworben.
Eines Tages beginnt A mit einem neuen Compiler zu arbeiten (beispielsweise Keil Compiler) und sie bemerken, dass ihr Code Coverage Tool nicht mit diesem Compiler funktioniert... und wenn er funktioniert, muss eine neue Lizenz gekauft werden, die mit diesem speziellen Compiler arbeitet...
Solche und ähnliche Szenarios passieren sehr häufig, da besonders große Unternehmen in mehrere Entwickler Teams (oft über die ganze Welt verteilt) aufgeteilt sind, welche vollkommen unabhängig voneinander eigene Entscheidungen fällen und Tools kaufen.
Daher wird häufig Testwell CTC++ gewählt, um die Code Coverage zu messen und als gemeinsamer Nenner bezogen auf Coverage Reports zu agieren.
Testwell CTC++ Test Coverage Analyzer ist die Lösung für das Problem der diversen Compiler: Aufgrund seiner Lage in der Toolchain spielt der Compiler für Testwell CTC++ keine Rolle. Es arbeitet und funktioniert mit allen Compilern.
Mit Testwell CTC++ ist die für gewöhnlich kleine Größe der Targets nicht von Bedeutung: das sogenannte Bit-Cov Add-on von Testwell CTC++ ermöglicht die Messung der Code Coverage auch auf den kleinsten Targets.
Aufgrund des geringen Instrumentation Overhead von Testwell CTC++ wird das Tool auch für sehr lange Code Basen benutzt. Testwell CTC++ arbeitet häufig auf der vollständigen Code Basis, wohingegen Unternehmen die andere Tools benutzen gezwungen sind, die Code Basis aufzuteilen, um die Code Coverage zu messen.




