Testen Web-basierter Systeme mittels strukturierter, graphischer Modelle - Vergleich anhand einer Fallstudie

Die konventionelle, benutzungsorientierte Prüfung der Qualität von Software konzentriert sich aufs Testen des Systemverhaltens unter regulären Bedingungen. Der vorliegende Beitrag überprüft das Systemverhalten über diese „Schönwetter-Tests“ hinaus bei fehlerhaften, meist unerwarteten Benutzungseingaben („Negativ“-Tests). Dabei ist das Augenmerk auf Testautomatisierung gelegt, insbes. zur Präzisierung des Wertebereichs der Testeingabedaten, Verfeinerung der Testeingaben und Verdeutlichung kausaler Abhängigkeiten. 1 Einleitung und verwandte Arbeiten Interaktive Systeme, die in sicherheitskritischen bzw. kapitalintensiven Umgebungen eingesetzt werden, verlangen nach einem hohen Maß an Zuverlässigkeit. Deswegen nimmt gerade die Prüfung dieser Systeme einen hohen Stellenwert ein, um Fehler aufzudecken, welche die Zuverlässigkeit und Benutzung der Systeme gefährden. Zu diesem Zweck werden Modelle und Techniken eingesetzt, die das System sowie die Interaktion des Benutzers mit dem System graphisch abbilden. Die Modellierung und das Testen interaktiver Systeme mittels zustandsbasierter Modelle hat eine lange Tradition [1], [2]. Diese Ansätze analysieren das Modell des Prüflings und leiten aus Nutzeranforderungen Sequenzen von Nutzerinteraktionen ab, die als Testfälle genutzt werden. [3] führt dafür ein vereinfachtes zustandsbasiertes, graphisches Modell ein. Dieses Modell wurde in [4] um die Ereignisorientierung ergänzt und vor allem dahin gehend erweitert, um nicht nur erwünschte, sondern auch unerwünschte Situationen abzubilden. Etwas salopp ausgedrückt wird die erste Gruppe der Tests hier „SchönwetterTests“ genannt, die komplementäre Sichtweise dagegen „Negativ-Tests“. Damit entsteht eine holistische Sichtweise, die sich aus Überlagerung der beiden Sichten ergibt. [5] befasst sich mit dem Test von Web-basierten Systemen und erweitert den ereignisorientierten Ansatz aus [4] um die Berücksichtigung kausaler Abhängigkeiten der Eingabedaten. In [5] wurde der Test von unzulässigen Eingabedaten allerdings nur rudimentär berücksichtigt, d.h. die komplementäre Sichtweise von [4] vernachlässigt.

[1]  Fevzi Belli,et al.  Holistic Testing of Interactive Systems Using Statecharts , 2006, Sicherheit.

[2]  Fevzi Belli,et al.  Finite state testing and analysis of graphical user interfaces , 2001, Proceedings 12th International Symposium on Software Reliability Engineering.

[3]  S. L. Gerhart,et al.  Toward a theory of test data selection , 1975, IEEE Transactions on Software Engineering.

[4]  Daniel P. Siewiorek,et al.  A method to automate user interface testing using variable finite state machines , 1997, Proceedings of IEEE 27th International Symposium on Fault Tolerant Computing.

[5]  David L. Parnas,et al.  On the use of transition diagrams in the design of a user interface for an interactive computer system , 1969, ACM '69.

[6]  Fevzi Belli,et al.  Event‐based modelling, analysis and testing of user interactions: approach and case study , 2006, Softw. Test. Verification Reliab..

[7]  Lee J. White,et al.  Generating test cases for GUI responsibilities using complete interaction sequences , 2000, Proceedings 11th International Symposium on Software Reliability Engineering. ISSRE 2000.