This article discusses various uses of OCL (Object Constraint Language) for both developers and testers. IT also enumerates the many advantages of the language, which is part of the UML specification.
A. Engel. Wiley Series in Systems Engineering and Management Wiley, 1 edition, (2010)Wertvoll wegen den verschiedenen Black-Box-Testing Methoden für komplexe Systeme..
J. Hartmann, M. Vieira, and A. Ruder. Proceedings of the International Workshop on Software Product Line Testing (SPLiT 2004), page 58--65. Boston, MA, (August 2004)
S. Pickin, C. Jard, Y. Traon, T. Jéron, J. Jézéquel, and A. Guennec. FORTE, page 97-113. (2002)MR: Mittels UMLAUT wird die UML-Spezifikation in ein IOLTS überführt und durch das Testsynthesis-Tool TGV werden Testfälle abgeleitet.
Auf diesem Ansatz baut auch der Ansatz von Nebut im SPL-Umfeld Nebut2002Nebut2003Nebut2006..
C. Nebut, F. Fleurey, Y. Traon, and J. Jézéquel. ISSRE '03: Proceedings of the 14th International Symposium on Software Reliability Engineering, page 85. Washington, DC, USA, IEEE Computer Society, (2003)
P. Fröhlich, and J. Link. ECOOP '00: Proceedings of the 14th European Conference on Object-Oriented Programming, page 472--492. London, UK, Springer-Verlag, (2000)
M. Friske, and H. Schlingloff. Tagungsband Dagstuhl-Workshop MBEES: Model Based Engineering of Embedded Systems, 2005-01, TU Braunschweig, (January 2005)
R. Schmidberger, and S. Biermann. Informatik 2007 - Band 2, GI-Edition, (September 2007)MR: Zeigt beispielhaft die Anwendung von OCL für den Systemtest. Auch der Realisierungsweg wird gezeigt.
ISBN 978-3-88579-204-8.
J. Offutt, and A. Abdurazik. UML'99 - The Unified Modeling Language. Beyond the Standard. Second International Conference, Fort Collins, CO, USA, October 28-30. 1999, Proceedings, 1723, page 416--429. Springer, (1999)MR: Die 'Transition Table' aus UML-Statechart-Werkzeugen wird eingelesen und entsprechend definierten Coverage-Criteria werden daraus Testfälle generiert. Ein weiterer Algo. kümmert sich um die Test Data indem die Werte generiert werden, die zum erreichen von bestimmten Zuständen notwendig sind.
Es gibt keine konkrete Aussage über erwartete Testergebnisse. Den Algorithmen kann man aber vorsichtig ableiten, dass mit Test Data auch die erwarteten Ergebnisse gemeint sind..
F. Basanieri, A. Bertolino, and E. Marchetti. «UML» 2002 — The Unified Modeling Language, page 275--303. (2002)MR: Cow_Suite ist ein Ansatz einer Technik und Toolprototyp für den Systemtest und Integrationstest und besteht aus zwei Teilen:
- UIT (Use Interaction Test) als Testableitungsmethode
- Cowtest (Cost Weighted Test Strategy) für Testpriorisierung und -selektion.
Mit Cowtest wird entschieden welche Testfälle ausgeführt werden sollen, durch setzen von Gewichten in die von der Spez. abgeleitete Graphstrukturen (Testauswahlkriterium) und unterstützt auch die Planung des Testprozesses.
UIT nutzt diese Information bei der Testfallableitung basierend auf der Category-Partition-Methode, also teils manuell (Interaction mit dem User).
Das Besondere ist, dass die forliegende Anforderungs- und Designspezifikation in Form von UML-Use-Case-Diagrammen und -Sequenzdiagrammen ohne weiteren Ausbau (also so wie sie ist) als Input für die Technik dienen kann.
Ein für IST-SPL wichtiger Ansatz: es wäre möglich ähnliche Strategie (CP) bereits für die Aktivitätsdiagramme anzuwenden, wobei deren Produktlinieneigenschaften berücksichtigt werden müssten..
J. Andrews, R. Fu, and V. Liu. ASE '02: Proceedings of the 17th IEEE international conference on Automated software engineering, page 275. Washington, DC, USA, IEEE Computer Society, (2002)ST: Nachtrag zum Paper "Testing using Log File Analysis: Tools, Methods, and Issues". Die dort vorgestellte Technik wird dahingehend erweitert, dass der Grad der Abdeckung der Transitionen des Orakels durch die Testfaelle gemessen werden kann. Außerdem können Testfaelle auf Basis des Orakels abgeleitet werden (Ist dass sinnvoll?) und das Testorakel kann automatisch validiert werden..
J. Andrews. ASE '98: Proceedings of the 13th IEEE international conference on Automated software engineering, page 157. Washington, DC, USA, IEEE Computer Society, (1998)ST: Interessantes Paper. Basis sind eine Menge von Zustandsautomaten, die als Testorakel dienen, und Logfiles, die während der Ausführung der Testfaelle Eingaben, Ausgaben, aufgerufene Methoden etc speichern. Nach der Ausführung der Tests werden die Logfiles gegen die Automaten geprueft, d.h. ob es für eine mitgeloggte Methodensequenz einen gültigen Lauf in einem Automaten gibt. Falls nicht, widerspricht das Verhalten des System der Spezifikation.
Die Technik ist automatisiert, die Technik wurde beispielhaft im Unittest und im Systemtest vorgestellt..