Close

Testabdeckung mit TPT.

Für WhiteBox– oder Strukturtests ist die interne Struktur der Software von Belang und muss analysiert werden. Das kann entweder durch manuelle oder automatisierte Analysen erfolgen. Für manuelle Untersuchungen sind große Programmiererfahrungen des Testers notwendig. Aus der internen Struktur werden Testfälle abgeleitet, die durch Stimulation der Eingänge möglichst die gesamte Struktur der Software abdecken. Abdeckungskriterien wie Bedingungsabdeckung, Entscheidungsabdeckung, modifizierte Bedingungs-/Entscheidungsabdeckung (MC/DC), Pfadabdeckung, Schnittstellenabdeckung und Funktionsabdeckung sind Maße für die Vollständigkeit der Abdeckung.

Abdeckungstests können in Modul- als auch in Softwaretests durchgeführt werden, wobei die Testfallerstellung in früheren Phasen mit kleineren Softwaremodulen einfacher ist als bei großer integrierter Software.

Manuelle WhiteBox-Testfallerstellung.

Mit der Testfallerstellung in TPT werden systematisch Eingangssignale und Funktionsaufrufe der Software erstellt.

Die Abdeckungsmessung erfolgt bei oder nach der Testdurchführung. In einem iterativen Prozess nähert man sich so der idealen Abdeckung an, indem immer mehr Testfälle erstellt werden, die zu einer immer besseren Abdeckung führen. Dabei findet man potentiell unerreichbaren toten Code, schlecht strukturierten Code oder unspezifiziertes Verhalten des Testobjekts.

Es ist empfehlenswert, mit funktionalen anforderungsbasierten Tests, Äquivalenzklassentests etc. zu beginnen und die Strukturtests erst am Ende zu machen. Die Prüfungen der Abdeckung können auf diese Weise auch Spezifikationslücken oder falsche Implementierungen aufdecken.

Der aufwendige manuelle Prozess kann durch Automatisierung vereinfacht werden.

Automatische Testfallgenerierung für Code Coverage.

Die automatische Testfallerstellung zur optimalen Codeabdeckung in TPT heißt TASMO. TASMO generiert ganz einfach und automatisiert Testfälle, die mit möglichst wenig Aufwand möglichst viel Condition Coverage und Decision Coverage abdecken. Mit TASMO können Sie neben Ihren manuell erstellten Testfällen, zeitsparend noch zusätzliche Testfälle generieren, um die Vollständigkeit der Abdeckung garantieren zu können.

TASMO kann für Simulink und TargetLink Modelle verwendet werden oder für C-Code.

Codeabdeckung messen.

Um Code Coverage automatisiert messen zu können bedarf es einer Instrumentierung des Source-Codes. Für eine optimale Messung der Coverage empfehlen wir für Modellabdeckung von Simulink Modellen die Coverage Toolbox von Simulink. Für C-Code empfehlen wir den Einsatz CTC++ oder Gcov oder TargetLink im Fall der dSpace TargetLink-Verwendung.

Für alle Tools gibt es die passenden Schnittstellen in TPT. Die Messergebnisse werden automatisch im TPT Report dargestellt.

Testabdeckung von Simulinkmodellen ermitteln.

TPT unterstützt die Testabdeckungsmessung von Simulink-Modellen über die “Coverage Toolbox” von Mathworks.

Testabdeckung von TargetLink-Seriencode.

TPT unterstützt die Testabdeckungsmessung von TargetLink-Seriencode mit TargetLink von dSPACE und CTC++ von Testwell.

In TPT you can choose TargetLink, CTC++ for TargetLink, or Simulink Coverage Toolbox as code coverage tools; or you write your own script.

Testabdeckung von C-Code ermitteln.

TPT unterstützt die Testabdeckungsmessung direkt mit den Werkzeugen CTC++ und Gcov. Diese Tools führen die eigentliche Code-Instrumentierung und Messung durch.

To observe the test coverage of C-code, you can use CTC++ or GNU gcov directly from within TPT.

Weitere Testabdeckungs-Werkzeuge.

TPT kann auch mit beliebigen anderen Testabdeckungswerkzeugen zusammenarbeiten; lediglich die Konfiguration und das Reporting erfolgen dann außerhalb von TPT.