Noch nicht registriert ? Erstellen Sie eine Overblog !

Mein Blog erstellen

Code Coverage Tools - Einsatzmöglichkeiten und Erfahrungsberichte

Code Coverage Tools - Einsatzmöglichkeiten und Erfahrungsberichte Als Senior Software Controller hört man unter den Kollegen oft falsche Aussagen über Code Coverage. Diese soll nun folgendes Kompendium aufdecken, damit andere Programmierer nicht wieder dem selben Irrtum aufsitzen.

Mit Code Coverage nicht immer 100 Prozent Abdeckung

So kann man etwa nicht immer 100 Prozent Abdeckung erreichen, bedingt durch den mangelnden Durchlauf des Case in der Switch-Anweisung.
Dieser Zweig besteht immer, egal ob er explizit programmiert wurde oder nicht. Ein weiterer Irrglaube besteht darin, dass der Name immer dasselbe Coverage-Maß anführt. Insbesondere wenn Codes wie C0 oder C1+ verwendet werden, ist Sorgfalt angesagt. Aufpassen sollte man auch bei der Messung, denn es nicht deutlich, wie Coverage gemessen wird. So besteht berechtigter Zweifel, wenn als Messergebnis das Modul Tessy angeführt ist. Beispielsweise wenn zwei Zweige berechnet werden, charakterisieren die Label „case 0“, „case 1“ und „case 2“ ein und denselben Zweig, was damit argumentiert werden könnte, dass ja alle drei desselben Befehl ausführen.
Falls jedes Label als eigener Zweig nummeriert wird, gibt es ja schon vier Zweige. Anzeige Die Verschiedenheit wird somit erst klar und eindeutig, wenn ein Testfall mit (i==1) erledigt wird. Ergeben sich dadurch 25 Prozent Zweigüberdeckung?
Die Switch-Anweisung besteht aus vier Zweigen; somit 25 Prozent Zweigüberdeckung. Nicht richtig ist weiters, wie der Code verfasst ist.
Ein Code in derselben Programmiersprache kann zur Erzielung eines bestimmten Coverage-Maßes eine unterschiedliche Anzahl von Testfällen erfordern.
Man kann einfach aus dem Code Testfälle folgern, mit denen man eine 100 prozentige Code-Coverage erreicht. Tools vernichten dies automatisch. Allerdings muss man sich dabei Folgende bewusst sein: Durch aus dem Code konsequenter Testfälle kann man keine Auslassungen im Code aufspüren!
Wurde etwa „verschwitzt“, eine Abfrage einzubauen, kann natürlich aus dem Code auch kein Testfall angenommen werden, der diese Abfrage prüft. Das Resultat von automatisch abgeleiteten Testfällen sollte explizit kontrolliert werden.
Versäumt man dies, werden bei ihrer Ausführung nur gravierende Probleme des Testobjekts, beispielsweise Bugs mit Total-Abstürzen, erfasst. Die Ableitung der Testergebnisse aus dem Code begrenzt die Testaussage ziemlich, denn dabei wird der Code als richtig und passend angenommen.

Fazit

Seien Sie sich immer sicher, dass Ihr Gesprächsteilnehmer unter einem Begriff aFazit uch dasselbe begreift und denkt wie Sie selbst. Wenn Sie ein Hilfsmittel zur Messung der Code-Coverage starten, testen Sie, wie dieses die obigen Zweifelsfälle behandelt. Seien Sie sich nie ganz entspannt, nur weil Sie 100 Prozent Code-Coverage erzielt haben!
Diese Ratschläge sollten Sie beim Umgang mit Code-Coverage auf alle Fälle beherzigen! Code-Coverage Tools für Java sind somit etwa Clover oder EMMA.

Gleiche Kategorie Artikel Computer

DSL-Alternativen - welche Möglichkeiten gibt es?

Dsl-alternativen - welche möglichkeiten gibt es?

Nachdem nun schon einige jahre dsl verfügbar ist und dank glasfaserkabel auch die geschwindigkeiten immer weiter steigen, gibt es weiterhin genug ortschaften, in denen gedrosseltes dsl oder gar nur isdn verfügbar ist. problematisch wird dies vor allem in ländlichen gebieten, in denen die übergabepunkte zu weit entfernt sind.
Discount Toshiba-Laptops: Schnäppchen oder Risiko?

Discount toshiba-laptops: schnäppchen oder risiko?

In letzter zeit überflutet der elektronik-hersteller toshiba den markt regelrecht mit super günstigen laptops. doch sind die verlockenden angebote wirklich empfehlenswert?
Blender für den Mac - Bedienung, Installation und Alternativen

Blender für den mac - bedienung, installation und alternativen

Auch auf dem mac wünscht man sich eine 3d-suite, mit der man vernünftig arbeiten kann. tief in die tasche greifen muss man dafür aber nicht. mit der software blender steht ein passendes programm auch unter os x zur verfügung.
IT Berufe - Berufe mit Zukunft?

It berufe - berufe mit zukunft?

Berufe in der it-branche sind so weit gefächert wie das fachgebiet selbst. da die it-branche immer weiter ausgebaut wird und neue technologien den markt erobern, entstehen immer mehr neue berufe in diesem zweig.