Melden Sie sich hier an, um auf Kommentare und die Whitepaper-Datenbank zugreifen zu können.

Kein Log-In? Dann jetzt kostenlos registrieren.

Falls Sie Ihr Passwort vergessen haben, können Sie es hier per E-Mail anfordern.

Der Zugang zur Reseller Only!-Community ist registrierten Fachhändlern, Systemhäusern und Dienstleistern vorbehalten.

Registrieren Sie sich hier, um Zugang zu diesem Bereich zu beantragen. Die Freigabe Ihres Zugangs erfolgt nach Prüfung Ihrer Anmeldung durch die Redaktion.

04.05.2007

Austria Card automatisiert Softwaretest

Dr. Rainer Doh 
Ein Tool erzeugt aus Modellen automatisch Testfälle und Test-Scripts sowie eine revisionsfähige Dokumentation.

Der österreichische Kartenhersteller Austria Card in Wien, seit 1994 ein Unternehmen der österreichischen Nationalbank, gehört zu den Pionieren bei der Herstellung von Chipkarten. Die 1995 von den österreichischen Banken eingeführte "Bankomatkarte mit Chip" bedeutete einen Durchbruch für das Zahlungsmittel Chipkarte im Handel. Heute produziert das Unternehmen rund 80 Millionen Karten pro Jahr, und die Entwicklungsabteilung stellt jährlich fünf neue Chip-Betriebssysteme fertig.

Projektsteckbrief

Projektart: Modell-basierendes Testen bei der Entwicklung von Software für Smartcards.

Branche: Finanzdienstleister.

Zeitrahmen: Start im Februar 2006; fortlaufend.

Produkte: Leirios Test Generator zur automatischen Erzeugung von Testfällen aus Testmodellen.

Ziel: Verbesserung der Reichweite der Tests ohne zusätzlichen Aufwand.

Herausforderung: Da Nachbesserungen ausgeschlossen sind, muss die Software gründlich ausgetestet sein.

Diese Betriebssysteme unterstützen im Allgemeinen mehrere Applikationen. Im Fall einer österreichischen Maestro- oder Mastercard sind das beispielsweise eine elektronische Geldbörse, Anwendungen für das Aufladen und Belasten der Karten nach unterschiedlichen internationalen Standards, zwei elektronische Signaturapplikationen für verschiedene Algorithmen sowie eine mächtige Anwendung für Kundenbindungsmaßnahmen. Von diesen Applikationen müssen natürlich auch sämtliche Vorgänge behandelt werden, die aus unterschiedlichen Gründen abgebrochen werden beziehungsweise in Fehlerzuständen enden.

Manuelles Testen unzureichend

Um die Produktqualität sicherzustellen, nimmt Austria Card umfangreiche Softwaretests vor, in denen sowohl die Spezifikation der Kartensoftware als auch ihre Implementierung gründlich geprüft werden. Dabei zeigte sich, dass das manuelle Testen angesichts des wachsenden Umfangs der Systeme allmählich nicht mehr ausreichte.

Dabei leitete ein Testingenieur aus der Spezifikation interessante "Fälle" ab und entwickelt daraus eine Reihe von Test-Cases sowie -Scripts, die in einer speziellen Testsoftware abgearbeitet werden. Das Verfahren hängt start von der subjektiven Einschätzung der Testfälle ab, zudem lässt sich so keine vollständige Prüfung aller sinnvollen Fälle und Fallkombinationen gewährleisten.

Im Februar 2006 begann Austria Card ein Projekt, das in die automatisierte Erzeugung von Testfällen münden sollte. Als Partner wählte das Unternehmen den französischen Softwarehersteller Leirios und dessen Umsetzung des Modell-basierenden Testens (MBT). Der "Leirios Test Generator" (LTG) erzeugt auf Basis des UML-Standards (Unified Modelling Language) automatisch Test-Scripts, die dann von den gängigen Testwerkzeugen ausgeführt werden können. Damit schließt er die Lücke zwischen Softwaredesign und Ausführung von Softwaretests.

Heute erstellt der Tester bei Austria Card ein Modell für den LTG; er übersetzt also die Spezifikationen in die von Austria Card verwendete Modellierungssprache "B". Aus diesem Testmodell generiert der LTG 200 bis 400 Testfälle, die als Script exportiert und von der Testsoftware eingelesen werden. In der Testumgebung findet auf der Basis des Modells der eigentliche Testlauf mit unterschiedlichen Werten und Wertekombinationen statt

Die Vorteile des Verfahrens

Ein großer Vorteil des neuen Verfahrens besteht darin, dass es sich zyklisch einsetzen lässt: Zeigen sich im Testlauf Fehler, so kann das Modell an der entsprechenden Stelle korrigiert werden. Damit muss der Anwender keine neuen Testfälle mehr erstellen.

Noch wichtiger: Das MBT verbessert den Testprozess selbst. Austria Card erreicht nun einen wesentlich höheren Grad der Abdeckung. "Bei Scripts, die mit der konventionellen Methode erstellt werden, lässt sich die Abdeckung nicht mit Sicherheit berechnen", erläutert Martin Manninger, Leiter des Ressorts Forschung und Entwicklung bei Austria Card. "Man muss immer damit rechnen, dass beispielsweise relevante Wertekombinationen im Test nicht untersucht wurden. Mit LTG erreichen wir dagegen eine Abdeckung von 97 Prozent." Über zusätzlichen Aufwand, also eine erweiterte Modellierung, lässt sich dieser Anteil weiter erhöhen.

Ein Vergleich zwischen manuellem und Modell-basierendem Testen ergab einen weiteren Vorteil des MBT: Mit LTG wurden ein Software-Bug und eine Lücke in der Spezifikation gefunden, die beim manuellen Testen verborgen blieben.

Die bessere Abdeckung der Testfälle wirkt sich unmittelbar auf das Testergebnis aus: Es lassen sich mehr Fälle durchspielen, die Kartensoftware wird gründlicher geprüft, ohne dass sich die Testdauer verlängerte. Das steigert die Qualität der Software und die Effizienz der Entwicklung.

Effizienzsteigernd wirkt sich zudem ein anderer Umstand aus: Der LTG kann automatisch eine revisionsfähige Dokumentation erstellen, während er Testmodelle generiert. Das verringerte den leidigen Dokumentationsaufwand bei Austria Card von rund 20 Manntagen auf eine Stunde (ue).