Your questions answered by real users, in moments. Build and share tests or surveys and give your users a voice wherever they are, whenever you need to.
The most advanced user testing platform. Get feedback from Real Users on your website, application or prototype and create better experiences for your customers.
E. Uzuncaova, D. Garcia, S. Khurshid, and D. Batory. ESEC-FSE '07: Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering, page 525--528. New York, NY, USA, ACM, (2007)ST: Die Spezifikation der Produktlinie liegt in einer formalen Beschreibung vor (LTL)
Es wird ein Modelchecking-Verfahren durchgefuehrt um zu beweisen, dass die Spezifikation gilt.
Fazit: Keine explizite Ableitung von Testdaten, die Spezifikation muss formal vorliegen.
MR: Anhand von formalen Alloy-Spezifikationen von Invarianten und Constraints kann der Alloy Analyzer (SAT solver) automatisch alle passenden Testdaten generieren.
Nachteile: Die erwarteten Ergebnisse werden nicht betrachtet (oder?). Die Spezifikation wird als Annotationen in den Code eingebracht (hier als moderner Ansatz angesehen ähnlich JML). An der Wiederverwendung wird erst gearbeitet..
P. Ammann, and J. Offutt. Compass'94: 9th Annual Conference on Computer Assurance, page 69--80. Gaithersburg, MD, National Institute of Standards and Technology, (1994)
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..
T. Yu, and J. Rutherford. The Seventh ACM SIGKDD International Conference on
Knowledge Discovery and Data Mining, San Francisco, California, USA, (26-29 August 2001)
S. Wappler, and J. Wegener. GECCO 2006: Proceedings of the 8th annual conference
on Genetic and evolutionary computation, 2, page 1925--1932. Seattle, Washington, USA, ACM Press, (8-12 July 2006)
H. Kayacik, A. Zincir-Heywood, and M. Heywood. IEEE Symposium on computational Intelligence in
Security and Defense Applications, page 153--160. Honolulu, IEEE Press, (April 2007)
M. Chen, X. Qiu, W. Xu, L. Wang, J. Zhao, and X. Li. The Computer Journal, (2007)MR: Der Ansatz ist ein Gray-Box-Ansatz, obwohl es auf Modellen basiert, muss das Programm selbst auch ausgeführt werden um bestimmte Eingaben für das Verfahren zu liefern.
Die Generierung von Testdaten ist kaum automatisiert.
Für IST-SPL interessant wegen den Formalismen für Aktivitätsdiagramme..
M. Cohen, M. Dwyer, and J. Shi. ROSATEA '06: Proceedings of the ISSTA 2006 workshop on Role of software architecture for testing and analysis, page 53--63. New York, NY, USA, ACM, (2006)MR: Ünsere" OVM-Notation wird auf ein relationales Modell abgebildet, um damit Abdeckungskriterien für das Testen von SPL definieren zu können. Mit diesen Kriterien kann die Information gesammelt werden für sogenanntes 'cumulative variability coverage' mit dem gezielt die Testaufwände für neue Produkte der SPL festgelegt werden können. Das Ganze wird durch combinatorial interaction testing ermöglicht. Diese Technik (aus Einzelsystemen bekannt) reduziert die hohe Anzahl von möglichen Kombinationen von Input-Variablen auf wenige Repräsentanten.
Bei IST-SPL könnte man überlegen, diese Technik als Ergänzung einer anderen einzuführen, um höhere Abdeckungsraten zu erreichen.
Der Nachteil ist jedoch immer noch, dass hierbei keine Orakel erstellt werden. Hierfür verweisen die Spezialisten von Combinatorial Testing auf Model Checking beispielsweise..
A. Bertolino, E. Marchetti, and A. Polini. Electronic Notes in Theoretical Computer Science, 82 (6):
44--54(September 2003)MR: vermutlich keine großen Neuerungen im Vergleich zu dem Haupt-Cow_Suite_Paper (Basanieri2002).
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..
A. Bertolino. Future of Software Engineering, 2007. FOSE '07, page 85-103. (2007)MR: Das bisher erreichte in Bezug auf Software-Testen wurde gut zusammengetragen. Für IST-SPL sind die Kapitel zu MBT (mit Testorakeln) und automatischen Testen interessant.
Die Notwendigkeit der Kombinierungsmöglichkeiten von verschiedenen Modelltypen (transition-based, pre/post condition-based, scenarion-based) wurde hervorgehoben..
A. Bertolino. Abstract State Machines, page 1-21. (2003)MR: Gute Zusammenfassung der Grundlagen über Testen, aber gleichzeitig auch Überblick zum State-Of-The-Art.
Für IST-SPL: Wertvoller Überblick über spezifikationsbasierte Testmethoden und kurz zum Testorakel-Problem..
J. Calame, N. Ioustinova, and J. van de Pol. Electronic Notes in Theoretical Computer Science, (October 2007)MR: Stark formalisiertes und mathematisch ergründetes Werk.
Basierend auf der Spezifikation des IUT (gegeben in LTS) wird der Lösungsraum durch data abstraction eingeengt (mittels µCRL). Mittels enumerativ tools (wie TGV) werden dann abstrakte Testfälle generiert. Die konkreten Daten (Ein und Ausgaben!) werden mittels constraint-solving techniques (mittels Prolog) ermittelt.
Future Work soll ermöglichen UML-Spezifikationen als Eingabe zu erlauben und die Testfälle sollen in TTCN-3 generiert werden!
Spätestens dann wird dieser Ansatz für IST-SPL sehr interessant..