skip to main content
10.1145/2896921.2896922acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

Automated testing of DSL implementations: experiences from building mbeddr

Published: 14 May 2016 Publication History

Abstract

Domain specific languages promise to improve productivity and quality of software by providing problem-adequate abstractions to developers. Projectional language workbenches like JetBrains MPS allow the definition of modular and extensible domain specific languages, generators and development environments. While recent advances in language engineering have enabled the definition of DSLs and tooling in a modular and cost-effective manner, the quality assurance of their implementation is still challenging. In this paper we present our work on testing the implementation of domain specific languages and associated tools, and discuss different approaches to increase the automation of language testing. We illustrate this based on MPS and our experience with testing mbeddr, a set of domain specific languages and tools on top of C tailored to embedded software development.

References

[1]
JetBrains MPS Documentation. https://www.jetbrains.com/mps/documentation/.
[2]
M. Amrani, B. Combemale, L. Lucio, G. M. K. Selim, J. Dingel, Y. L. Traon, H. Vangheluwe, and J. R. Cordy. Formal verification techniques for model transformations: A tridimensional classification. Journal of Object Technology, 14(3):1:1--43, 2015.
[3]
F. Campagne. The MPS Language Workbench. CreateSpace Publishing, 2014.
[4]
E. M. Clarke, D. Kroening, and F. Lerda. A tool for checking ANSI-C programs. In Tools and Algorithms for the Construction and Analysis of Systems, - 10th International Conference, 2004.
[5]
S. Erdweg, T. Storm, M. Völter, et al. The State of the Art in Language Workbenches. In Software Language Engineering, LNCS. Springer, 2013.
[6]
M. Eysholdt. Executable specifications for xtext. Website, 2014. http://www.xpect-tests.org/.
[7]
L. C. Kats, R. Vermaas, and E. Visser. Integrated language definition testing: enabling test-driven language development. In ACM SIGPLAN Notices, volume 46, pages 139--154. ACM, 2011.
[8]
R. Lämmel. Grammar testing. In Proceedings of the 4th International Conference on Fundamental Approaches to Software Engineering, 2001.
[9]
Z. Molotnikov, M. Völter, and D. Ratiu. Automated domain-specific C verification with mbeddr. In Proc. of the 29th ACM/IEEE Intl. Conference on Automated Software Engineering, 2014.
[10]
D. Pavletic, S. A. Raza, K. Dummann, and K. Hasslbauer. Testing extensible language debuggers. In Proceedings of 1st International Workshop on Executable Modeling, 2015.
[11]
D. Ratiu, M. Voelter, B. Kolb, and B. Schätz. Using language engineering to lift languages and analyses at the domain level. In NASA Formal Methods, 5th International Symposium, 2013.
[12]
M. Voelter, S. Benz, C. Dietrich, B. Engelmann, M. Helander, L. Kats, E. Visser, and G. Wachsmuth. DSL Engineering. dslbook.org, 2013.
[13]
M. Voelter, D. Ratiu, B. Schätz, and B. Kolb. mbeddr: an extensible C-based programming language and IDE for embedded systems. In SPLASH '12, 2012.
[14]
H. Wu, R. Monahan, and J. F. Power. Metamodel instance generation: A systematic literature review. Computing Research Repository (CoRR), 2012.
[15]
X. Yang, Y. Chen, E. Eide, and J. Regehr. Finding and understanding bugs in c compilers. SIGPLAN Not., 46(6):283--294, June 2011.

Cited By

View all

Index Terms

  1. Automated testing of DSL implementations: experiences from building mbeddr

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    AST '16: Proceedings of the 11th International Workshop on Automation of Software Test
    May 2016
    105 pages
    ISBN:9781450341516
    DOI:10.1145/2896921
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 14 May 2016

    Permissions

    Request permissions for this article.

    Check for updates

    Qualifiers

    • Research-article

    Conference

    ICSE '16
    Sponsor:

    Upcoming Conference

    ICSE 2025

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)19
    • Downloads (Last 6 weeks)2
    Reflects downloads up to 24 Jan 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2023)Strukturierte SoftwareentwicklungSoftware im Automobil10.1007/978-3-662-67156-6_3(141-214)Online publication date: 13-Jun-2023
    • (2023)Testing Languages with a Languages-as-Databases ApproachTests and Proofs10.1007/978-3-031-38828-6_7(108-126)Online publication date: 18-Jul-2023
    • (2020)Systematic mapping study on domain-specific language development toolsEmpirical Software Engineering10.1007/s10664-020-09872-1Online publication date: 28-Aug-2020
    • (2019)Using language workbenches and domain-specific languages for safety-critical software developmentSoftware and Systems Modeling (SoSyM)10.1007/s10270-018-0679-018:4(2507-2530)Online publication date: 2-Aug-2019
    • (2019)Lessons learned from developing mbeddrSoftware and Systems Modeling (SoSyM)10.1007/s10270-016-0575-418:1(585-630)Online publication date: 1-Feb-2019
    • (2019)Diversity of graph models and graph generators in mutation testingInternational Journal on Software Tools for Technology Transfer10.1007/s10009-019-00530-6Online publication date: 11-Sep-2019
    • (2018)Best Practices for Domain-Specific Modeling. A Systematic Mapping Study2018 44th Euromicro Conference on Software Engineering and Advanced Applications (SEAA)10.1109/SEAA.2018.00031(137-145)Online publication date: Aug-2018
    • (2018)Iterative Generation of Diverse Models for Testing Specifications of DSL ToolsFundamental Approaches to Software Engineering10.1007/978-3-319-89363-1_13(227-245)Online publication date: 4-Apr-2018
    • (2017)DATmProceedings of the 12th International Workshop on Automation of Software Testing10.1109/AST.2017.5(45-51)Online publication date: 20-May-2017

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media