Ein Angebot von

Keine Angst vor Software-Varianten – Wiederverwendung und Vererbung von Testfällen

| Autor / Redakteur: Michael Wittner* / Sebastian Gerstl

Eindeutige Identifizierung von Testfällen

Für die eindeutige Identifikation werden jedem Basistestfall ein „Universal Unique Identifier“ (eine sogenannte UUID) zugeordnet. Diese UUIDs werden weltweit und zeitlich eindeutig generiert. Wenn ein Testfall nun an eine Variante vererbt wird, dann handelt es sich bei dem geerbten und für die Variante angepassten Testfall letztlich um denselben (Basis-)Testfall. Bei einem Review der Tests können die geerbten Testfälle damit eindeutig mit den Basistests oder den Tests einer anderen Variante verglichen werden.

Wichtig wird die UUID insbesondere bei der Synchronisation von Testfällen: Wenn Basistestfälle verschoben, gelöscht oder modifiziert werden, dann muss bei der Synchronisation der jeweils passende geerbte Testfall gesucht und aktualisiert werden. Nicht mehr vorhandene geerbte Testfälle müssen gelöscht werden. Die Zuordnung von UUIDS ermöglicht auch ein räumlich verteiltes Arbeiten an Variantentests, da sämtliche Testfälle eindeutig definiert sind und die Tests deshalb problemlos wieder zusammengeführt und aktualisiert werden können.

Wiederverwendung und Vererbung von Testfällen: Ergebnisse

Für das gezeigte Variantenbeispiel wurde folgende Strategie für die Definition von Tests verwendet:

  • Übernahme der Variantendefinitionen aus dem Applikationsdesign
  • Definition aller möglichen Testfälle auf oberster Ebene für alle Varianten
  • Ausblendung der nicht benötigten Testfälle in jeder Variante
  • Ergänzung bzw. Implementierung der Tests jeweils getrennt in jeder Variante

Der Vorteil dieser Vorgehensweise liegt in der zentralen Spezifikation der Testfälle in einem einzigen Klassifikationsbaum. Das erhöht die Übersichtlichkeit und gibt einen vollständigen Überblick über alle Tests bei einem Review. Das Ausblenden von nicht benötigten Testfällen in Varianten ist relativ einfach und bewirkt gleichzeitig, dass sich der Testingenieur Gedanken darüber machen muss, welcher Testfall für seine Variante tatsächlich notwendig ist. Abweichend von dieser Strategie sind auch die nachfolgend beschriebenen alternativen Vorgehensweisen möglich.

„Natürliche“ Vorgehensweise

Für einen Testingenieur ist es in der Regel leichter, Tests für eine konkrete Variante zu erstellen, als auf abstraktem Niveau über alle Varianten gleichzeitig nachzudenken. Je nach Art der zu testenden Software kann es daher sinnvoll sein, zunächst eine Variante komplett zu testen und dann die erzeugten Testfälle auf eine andere Variante zu übertragen.

Damit die Vererbung von Testfällen genutzt werden kann, ist aber eine hierarchische Definition der Varianten erforderlich. Es wäre daher notwendig, die Testfälle der fertig getesteten Variante auf eine übergeordnete (Basis-)Variante zu übertragen und ggf. zu verallgemeinern. Eine Übertragung der Testdaten setzt natürlich voraus, dass zumindest der größte Teil des Interfaces der Variantenfunktion auch auf dieser übergeordneten Ebene verfügbar ist.

Varianten im Klassifikationsbaum

Er wäre außerdem denkbar, Teile des Klassifikationsbaums jeweils variantenspezifisch zu filtern. Daraus würde dann jeweils eine eigene Testfallspezifikation pro Variante erzeugt. Der gesamte Klassifikationsbaum mit allen Varianten würde trotzdem auf der obersten Ebene der Variantenhierarchie verwaltet und bearbeitet werden. Zum Review der Tests könnte entweder der Gesamtbaum oder der jeweilige Teilbaum der Variante betrachtet werden.

Kongresshinweis Dieser Beitrag von Razorcat stammt aus dem Kongressband des ESE Kongress 2017. Auch in diesem Jahr sind auf der Fachkonferenz zahlreiche Themen rund um Testlösungen und Qualitätssicherung von Embedded Software vertreten.
Der Embedded Software Engineering Kongress findet 2018 vom 3. bis 7. Dezember in Sindelfingen statt. 100 Referenten behandeln an fünf Tagen in 99 Vorträgen alle Themen des modernen Embedded Software Engineering. Im letzten Jahr kamen über 1200 Teilnehmer nach Sindelfingen. Der Kongress wird von einer Fachausstellung mit über 50 renommierten Firmen begleitet. Programm und Information.

Stolperfalle Copy & Paste: Kopierte Fehler im Software-Code aufspüren

Stolperfalle Copy & Paste: Kopierte Fehler im Software-Code aufspüren

05.09.18 - Auch wenn es als schlechter Stil gilt, ist Copy&Paste dennoch unter Entwicklern ein gängiges Verfahren zur Code-Wiederverwertung. Doch können dabei auch vorhandene Sicherheitslücken kopiert werden – und neue Fehler entstehen. Die statische Code-Analyse kann helfen, Bugs in kopiertem Code zu vermeiden. lesen

Änderungen in zertifizierter Software schnell umsetzen und testen

Änderungen in zertifizierter Software schnell umsetzen und testen

22.06.18 - Softwaretests sind Pflicht – vor allem, wenn es um Programmierstandards und Zertifikate geht. Entwickler schrecken daher oft vor nachträglichen Änderungen in bereits zertifizierter Software zurück. Eine Automatisierte Code Change Analyse, welche alle testrelevanten Änderungen selbsttätig ermittelt, hilft hier weiter. lesen

Der Autor

Diplom-Informatiker Michael Wittner, geschäftsführender Gesellschafter der Razorcat Development GmbH.
Diplom-Informatiker Michael Wittner, geschäftsführender Gesellschafter der Razorcat Development GmbH. (Bild: Razorcat)

Dipl.-Inform. Michael Wittner ist seit vielen Jahren im Bereich Software-Entwicklung und Test tätig. Nach dem Studium der Informatik an der TU Berlin arbeitete er als wissenschaftlicher Mitarbeiter der Daimler AG an der Entwicklung von Testmethoden und Testwerkzeugen. Seit 1997 ist er geschäftsführender Gesellschafter der Razorcat Development GmbH, dem Hersteller des Unit-Testtools TESSY und CTE sowie des Testmanagement-Tools ITE und der Testspezifikationssprache CCDL.

Inhalt des Artikels:

Kommentar zu diesem Artikel abgeben

Schreiben Sie uns hier Ihre Meinung ...
(nicht registrierter User)

Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
Kommentar abschicken
copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 45622805 / Test & Qualität)