Skip to main content
Erschienen in: Software and Systems Modeling 3/2023

25.09.2022 | Theme Section Paper

Advanced testing and debugging support for reactive executable DSLs

verfasst von: Faezeh Khorram, Erwan Bousse, Jean-Marie Mottu, Gerson Sunyé

Erschienen in: Software and Systems Modeling | Ausgabe 3/2023

Einloggen

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Executable Domain-Specific Languages (xDSLs) allow the definition and the execution of behavioral models. Some behavioral models are reactive, meaning that during their execution, they accept external events and react by exposing events to the external environment. Since complex interaction may occur between the reactive model and the external environment, they should be tested as early as possible to ensure the correctness of their behavior. In this paper, we propose a set of generic testing facilities for reactive xDSLs using the standardized Test Description Language (TDL). Given a reactive xDSL, we generate a TDL library enabling the domain experts to write and run event-driven TDL test cases for conforming reactive models. To further support the domain expert, the approach integrates interactive debugging to help in localizing defects, and mutation analysis to measure the quality of test cases. We evaluate the level of genericity of the approach by successfully writing, executing, and analyzing 247 event-driven TDL test cases for 70 models conforming to two different reactive xDSLs.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Fußnoten
1
There are also other ways to define the runtime state, such as using imports or inheritance relationships.
 
2
Please note that the ‘occurrence’ word is used in the paper in two ways, for reactive xDSLs in general, and for xPSSM in particular.
 
3
Elements of the Figure are written in italic in the text.
 
4
One of our authors is involved in [5].
 
7
Action language for fUML.
 
Literatur
1.
Zurück zum Zitat Andrews, J.H., Briand, L.C., Labiche, Y., Namin, A.S.: Using mutation analysis for assessing and comparing testing coverage criteria. IEEE Trans. Software Eng. 32(8), 608–624 (2006)CrossRef Andrews, J.H., Briand, L.C., Labiche, Y., Namin, A.S.: Using mutation analysis for assessing and comparing testing coverage criteria. IEEE Trans. Software Eng. 32(8), 608–624 (2006)CrossRef
2.
Zurück zum Zitat Arnaud, M., Bannour, B., Cuccuru, A., Gaston, C., Gerard, S., Lapitre, A.: Timed symbolic testing framework for executable models using high-level scenarios. In: Complex Systems Design & Management, pp 269–282. Springer, (2015) Arnaud, M., Bannour, B., Cuccuru, A., Gaston, C., Gerard, S., Lapitre, A.: Timed symbolic testing framework for executable models using high-level scenarios. In: Complex Systems Design & Management, pp 269–282. Springer, (2015)
3.
Zurück zum Zitat Bendraou, R., Combemale, B., Crégut, X., Gervais, M.-P.: Definition of an eXecutable SPEM 2.0. In: 14th Asia-Pacific Software Engineering Conference (APSEC), pp 390–397. IEEE Computer Society, (2007) Bendraou, R., Combemale, B., Crégut, X., Gervais, M.-P.: Definition of an eXecutable SPEM 2.0. In: 14th Asia-Pacific Software Engineering Conference (APSEC), pp 390–397. IEEE Computer Society, (2007)
4.
Zurück zum Zitat Bousse, E., Degueule, T., Vojtisek, D., Mayerhofer, T., Deantoni, J., Combemale, B.: Execution framework of the gemoc studio (tool demo). In: Proceedings of the 2016 ACM SIGPLAN International Conference on Software Language Engineering, pp 84-89. Association for Computing Machinery, (2016) Bousse, E., Degueule, T., Vojtisek, D., Mayerhofer, T., Deantoni, J., Combemale, B.: Execution framework of the gemoc studio (tool demo). In: Proceedings of the 2016 ACM SIGPLAN International Conference on Software Language Engineering, pp 84-89. Association for Computing Machinery, (2016)
5.
Zurück zum Zitat Bousse, E., Leroy, D., Combemale, B., Wimmer, M., Baudry, B.: Omniscient debugging for executable dsls. J. Syst. Softw. 137, 261–288 (2018)CrossRef Bousse, E., Leroy, D., Combemale, B., Wimmer, M., Baudry, B.: Omniscient debugging for executable dsls. J. Syst. Softw. 137, 261–288 (2018)CrossRef
6.
Zurück zum Zitat Ciccozzi, F., Malavolta, I., Selic, B.: Execution of uml models: a systematic review of research and practice. Softw. Syst. Model. 18, 2313–2360 (2019)CrossRef Ciccozzi, F., Malavolta, I., Selic, B.: Execution of uml models: a systematic review of research and practice. Softw. Syst. Model. 18, 2313–2360 (2019)CrossRef
7.
Zurück zum Zitat Deantoni, J.: Modeling the Behavioral Semantics of Heterogeneous Languages and their Coordination. In: Architecture Centric Virtual Integration (ACVI). Julien Delange and Jerome Hugues and Peter Feiler, (2016) Deantoni, J.: Modeling the Behavioral Semantics of Heterogeneous Languages and their Coordination. In: Architecture Centric Virtual Integration (ACVI). Julien Delange and Jerome Hugues and Peter Feiler, (2016)
8.
Zurück zum Zitat DeMillo, R., Lipton, R., Sayward, F.: Hints on test data selection: help for the practicing programmer. Computer 11(4), 34–41 (1978)CrossRef DeMillo, R., Lipton, R., Sayward, F.: Hints on test data selection: help for the practicing programmer. Computer 11(4), 34–41 (1978)CrossRef
9.
Zurück zum Zitat Efftinge, S., Eysholdt, M., Köhnlein, J., Zarnekow, S., von Massow, R., Hasselbring, W., Hanus, M.: Xbase: Implementing domain-specific languages for java. SIGPLAN Notices 48(3), 112–121 (2012)CrossRef Efftinge, S., Eysholdt, M., Köhnlein, J., Zarnekow, S., von Massow, R., Hasselbring, W., Hanus, M.: Xbase: Implementing domain-specific languages for java. SIGPLAN Notices 48(3), 112–121 (2012)CrossRef
12.
Zurück zum Zitat Fabbri, S., Maldonado, J., Delamaro, M.: Proteum/fsm: a tool to support finite state machine validation based on mutation testing. In: Proceedings. SCCC’99 XIX International Conference of the Chilean Computer Science Society, pp 96–104, (1999) Fabbri, S., Maldonado, J., Delamaro, M.: Proteum/fsm: a tool to support finite state machine validation based on mutation testing. In: Proceedings. SCCC’99 XIX International Conference of the Chilean Computer Science Society, pp 96–104, (1999)
13.
Zurück zum Zitat Fischer, T., Niere, J., Torunski, L., Zündorf, A.: Story diagrams: A new graph rewrite language based on the unified modeling language and java. In: Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G. (eds.) Theory and Application of Graph Transformations, pp. 296–309. Springer, Berlin Heidelberg (2000) Fischer, T., Niere, J., Torunski, L., Zündorf, A.: Story diagrams: A new graph rewrite language based on the unified modeling language and java. In: Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G. (eds.) Theory and Application of Graph Transformations, pp. 296–309. Springer, Berlin Heidelberg (2000)
14.
Zurück zum Zitat Gómez-Abajo, P., Guerra, E., de Lara, J.: Wodel: A domain-specific language for model mutation. In: Proceedings of the 31st Annual ACM Symposium on Applied Computing, SAC ’16, pp 1968-1973. Association for Computing Machinery, (2016) Gómez-Abajo, P., Guerra, E., de Lara, J.: Wodel: A domain-specific language for model mutation. In: Proceedings of the 31st Annual ACM Symposium on Applied Computing, SAC ’16, pp 1968-1973. Association for Computing Machinery, (2016)
15.
Zurück zum Zitat Gómez-Abajo, P., Guerra, E., de Lara, J., Merayo, M.G.: Wodel-test: a model-based framework for language-independent mutation testing. Softw. Syst. Model. 20, 1–27 (2020) Gómez-Abajo, P., Guerra, E., de Lara, J., Merayo, M.G.: Wodel-test: a model-based framework for language-independent mutation testing. Softw. Syst. Model. 20, 1–27 (2020)
16.
Zurück zum Zitat Harel, D., Lachover, H., Naamad, A., Pnueli, A., Politi, M., Sherman, R., Shtull-Trauring, A., Trakhtenbrot, M.: Statemate: a working environment for the development of complex reactive systems. IEEE Trans. Software Eng. 16(4), 403–414 (1990)CrossRef Harel, D., Lachover, H., Naamad, A., Pnueli, A., Politi, M., Sherman, R., Shtull-Trauring, A., Trakhtenbrot, M.: Statemate: a working environment for the development of complex reactive systems. IEEE Trans. Software Eng. 16(4), 403–414 (1990)CrossRef
17.
Zurück zum Zitat Hili, N., Bagherzadeh, M., Jahed, K., Dingel, J.: A model-based architecture for interactive run-time monitoring. Softw. Syst. Model. 19, 959–981 (2020)CrossRef Hili, N., Bagherzadeh, M., Jahed, K., Dingel, J.: A model-based architecture for interactive run-time monitoring. Softw. Syst. Model. 19, 959–981 (2020)CrossRef
18.
Zurück zum Zitat Iqbal, J., Ashraf, A., Truscan, D., Porres, I.: Exhaustive simulation and test generation using fuml activity diagrams. In: Giorgini, P., Weber, B. (eds.) Advanced Information Systems Engineering. pp, pp. 96–110. Springer International Publishing, Cham (2019) Iqbal, J., Ashraf, A., Truscan, D., Porres, I.: Exhaustive simulation and test generation using fuml activity diagrams. In: Giorgini, P., Weber, B. (eds.) Advanced Information Systems Engineering. pp, pp. 96–110. Springer International Publishing, Cham (2019)
19.
Zurück zum Zitat Jia, Y., Harman, M.: An analysis and survey of the development of mutation testing. IEEE Trans. Software Eng. 37(5), 649–678 (2011)CrossRef Jia, Y., Harman, M.: An analysis and survey of the development of mutation testing. IEEE Trans. Software Eng. 37(5), 649–678 (2011)CrossRef
20.
Zurück zum Zitat Khorram, F., Bousse, E., Mottu, J.-M., Sunyé, G.: Adapting tdl to provide testing support for executable dsls. J. Object Technol., 20(3), 6:1–15, (2021) Khorram, F., Bousse, E., Mottu, J.-M., Sunyé, G.: Adapting tdl to provide testing support for executable dsls. J. Object Technol., 20(3), 6:1–15, (2021)
21.
Zurück zum Zitat King, T.M., Nunez, G., Santiago, D., Cando, A., Mack, C.: Legend: An agile dsl toolset for web acceptance testing. In: Proceedings of the 2014 International Symposium on Software Testing and Analysis, ISSTA 2014, pp 409-412. Association for Computing Machinery, (2014) King, T.M., Nunez, G., Santiago, D., Cando, A., Mack, C.: Legend: An agile dsl toolset for web acceptance testing. In: Proceedings of the 2014 International Symposium on Software Testing and Analysis, ISSTA 2014, pp 409-412. Association for Computing Machinery, (2014)
22.
Zurück zum Zitat Kos, T., Mernik, M., Kosar, T.: Test automation of a measurement system using a domain-specific modelling language. J. Syst. Softw. 111, 74–88 (2016)CrossRef Kos, T., Mernik, M., Kosar, T.: Test automation of a measurement system using a domain-specific modelling language. J. Syst. Softw. 111, 74–88 (2016)CrossRef
23.
Zurück zum Zitat Lazăr, I., Motogna, S., Pârv, B.: Behaviour-driven development of foundational uml components. Electronic Notes in Theoretical Computer Science, 264(1), 91–105, (2010). Proceedings of the 7th International Workshop on Formal Engineering approaches to Software Components and Architectures (FESCA 2010) Lazăr, I., Motogna, S., Pârv, B.: Behaviour-driven development of foundational uml components. Electronic Notes in Theoretical Computer Science, 264(1), 91–105, (2010). Proceedings of the 7th International Workshop on Formal Engineering approaches to Software Components and Architectures (FESCA 2010)
24.
Zurück zum Zitat Leroy, D., Bousse, E., Wimmer, M., Mayerhofer, T., Combemale, B., Schwinger, W.: Behavioral interfaces for executable dsls. Softw. Syst. Model. 19(4), 1015–1043 (2020)CrossRef Leroy, D., Bousse, E., Wimmer, M., Mayerhofer, T., Combemale, B., Schwinger, W.: Behavioral interfaces for executable dsls. Softw. Syst. Model. 19(4), 1015–1043 (2020)CrossRef
25.
Zurück zum Zitat Li, J.-h., Dai, G.-x., Li, H.-h.: Mutation analysis for testing finite state machines. In: 2009 Second International Symposium on Electronic Commerce and Security, pp 620–624, (2009) Li, J.-h., Dai, G.-x., Li, H.-h.: Mutation analysis for testing finite state machines. In: 2009 Second International Symposium on Electronic Commerce and Security, pp 620–624, (2009)
26.
Zurück zum Zitat Lübke, D., van Lessen, T.: Bpmn-based model-driven testing of service-based processes. In: Enterprise, Business-Process and Information Systems Modeling, pp 119–133. Springer, (2017) Lübke, D., van Lessen, T.: Bpmn-based model-driven testing of service-based processes. In: Enterprise, Business-Process and Information Systems Modeling, pp 119–133. Springer, (2017)
27.
Zurück zum Zitat Makedonski, P., Adamis, G., Käärik, M., Kristoffersen, F., Carignani, M., Ulrich, A., Grabowski, J.: Test descriptions with etsi tdl. Software Qual. J. 27(2), 885–917 (2019)CrossRef Makedonski, P., Adamis, G., Käärik, M., Kristoffersen, F., Carignani, M., Ulrich, A., Grabowski, J.: Test descriptions with etsi tdl. Software Qual. J. 27(2), 885–917 (2019)CrossRef
28.
Zurück zum Zitat Mens, T., Decan, A., Spanoudakis, N.I.: A method for testing and validating executable statechart models. Softw. Syst. Model. 18, 837–863 (2019)CrossRef Mens, T., Decan, A., Spanoudakis, N.I.: A method for testing and validating executable statechart models. Softw. Syst. Model. 18, 837–863 (2019)CrossRef
29.
Zurück zum Zitat Meyers, B., Denil, J., Dávid, I., Vangheluwe, H.: Automated testing support for reactive domain-specific modelling languages. In: Proceedings of the 2016 ACM SIGPLAN International Conference on Software Language Engineering, pp 181–194. Association for Computing Machinery, (2016) Meyers, B., Denil, J., Dávid, I., Vangheluwe, H.: Automated testing support for reactive domain-specific modelling languages. In: Proceedings of the 2016 ACM SIGPLAN International Conference on Software Language Engineering, pp 181–194. Association for Computing Machinery, (2016)
30.
Zurück zum Zitat Mijatov, S., Mayerhofer, T., Langer, P., Kappel, G.: Testing functional requirements in uml activity diagrams. In: Blanchette, J.C., Kosmatov, N. (eds.) Tests and Proofs. pp, pp. 173–190. Springer International Publishing, Cham (2015) Mijatov, S., Mayerhofer, T., Langer, P., Kappel, G.: Testing functional requirements in uml activity diagrams. In: Blanchette, J.C., Kosmatov, N. (eds.) Tests and Proofs. pp, pp. 173–190. Springer International Publishing, Cham (2015)
31.
Zurück zum Zitat OASIS. Web services business process execution language version 2.0, (2007) OASIS. Web services business process execution language version 2.0, (2007)
32.
Zurück zum Zitat Object Management Group. Business Process Model And Notation, (2010) Object Management Group. Business Process Model And Notation, (2010)
33.
Zurück zum Zitat Object Management Group. Semantics of a Foundational Subset for Executable UML Models, (2013) Object Management Group. Semantics of a Foundational Subset for Executable UML Models, (2013)
34.
Zurück zum Zitat Object Management Group. Meta Object Facility, (2016) Object Management Group. Meta Object Facility, (2016)
35.
Zurück zum Zitat Object Management Group. Unified Modeling Language, 2017 Object Management Group. Unified Modeling Language, 2017
36.
Zurück zum Zitat Object Management Group. Precise Semantics of UML State Machines, 2019 Object Management Group. Precise Semantics of UML State Machines, 2019
37.
Zurück zum Zitat Pinto Ferraz Fabbri, S., Delamaro, M., Maldonado, J., Masiero, P.: Mutation analysis testing for finite state machines. In: Proceedings of 1994 IEEE International Symposium on Software Reliability Engineering, pp 220–229, (1994) Pinto Ferraz Fabbri, S., Delamaro, M., Maldonado, J., Masiero, P.: Mutation analysis testing for finite state machines. In: Proceedings of 1994 IEEE International Symposium on Software Reliability Engineering, pp 220–229, (1994)
38.
Zurück zum Zitat Santiago, D., Cando, A., Mack, C., Nunez, G., Thomas, T., King, T. M.: Towards domain-specific testing languages for software-as-a-service. In: 2nd International Workshop on Model-Driven Engineering for High Performance and Cloud computing (MDHPCL), pp 43–52, (2013) Santiago, D., Cando, A., Mack, C., Nunez, G., Thomas, T., King, T. M.: Towards domain-specific testing languages for software-as-a-service. In: 2nd International Workshop on Model-Driven Engineering for High Performance and Cloud computing (MDHPCL), pp 43–52, (2013)
39.
Zurück zum Zitat Siavashi, F., Truscan, D., Vain, J.: Vulnerability assessment of web services with model-based mutation testing. In: 2018 IEEE International Conference on Software Quality, Reliability and Security (QRS), pp 301–312, (2018) Siavashi, F., Truscan, D., Vain, J.: Vulnerability assessment of web services with model-based mutation testing. In: 2018 IEEE International Conference on Software Quality, Reliability and Security (QRS), pp 301–312, (2018)
40.
Zurück zum Zitat Steinberg, D., Budinsky, F., Merks, E., Paternostro, M.: EMF: eclipse modeling framework. Pearson Education, (2008) Steinberg, D., Budinsky, F., Merks, E., Paternostro, M.: EMF: eclipse modeling framework. Pearson Education, (2008)
41.
Zurück zum Zitat Wu, H., Gray, J., Mernik, M.: Unit testing for domain-specific languages. In: Taha, W.M. (ed.) Domain-Specific Languages, pp. 125–147. Springer, Berlin Heidelberg (2009) Wu, H., Gray, J., Mernik, M.: Unit testing for domain-specific languages. In: Taha, W.M. (ed.) Domain-Specific Languages, pp. 125–147. Springer, Berlin Heidelberg (2009)
Metadaten
Titel
Advanced testing and debugging support for reactive executable DSLs
verfasst von
Faezeh Khorram
Erwan Bousse
Jean-Marie Mottu
Gerson Sunyé
Publikationsdatum
25.09.2022
Verlag
Springer Berlin Heidelberg
Erschienen in
Software and Systems Modeling / Ausgabe 3/2023
Print ISSN: 1619-1366
Elektronische ISSN: 1619-1374
DOI
https://doi.org/10.1007/s10270-022-01025-w

Weitere Artikel der Ausgabe 3/2023

Software and Systems Modeling 3/2023 Zur Ausgabe

Premium Partner