Model-Driven Fault Injection in Java']Java Source Code

被引:3
|
作者
Rodrigues Jr, Elder [1 ]
Montecchi, Leonardo [1 ]
Ceccarelli, Andrea [2 ]
机构
[1] Univ Estadual Campinas, Campinas, SP, Brazil
[2] Univ Firenze, Florence, Italy
基金
巴西圣保罗研究基金会; 欧盟地平线“2020”;
关键词
Software faults; fault libraries; metamodel; OCL; code patterns; !text type='Java']Java[!/text;
D O I
10.1109/ISSRE5003.2020.00046
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The injection of software faults in source code requires accurate knowledge of the programming language, both to craft faults and to identify injection locations. As such, fault injection and code mutation tools are typically tailored for a specific language and have limited extensibility. In this paper we present a model-driven approach to craft and inject software faults in source code. While its concrete application is presented for Java, the workflow we propose does not depend on a specific programming language. Following Model-Driven Engineering principles, the faults and the criteria to select injection locations are described using structured, machine-readable specifications based on a domain-specific language. Then, automated transformations craft artifacts based on OCL and Java, which represent the faults to be injected and are able to select the candidate injection locations. Finally, artifacts are executed against the target source code, performing the injection in the desired locations. We devise a supporting tool and exercise the approach injecting 13 different kinds of software faults in the Java source code of six different projects.
引用
收藏
页码:414 / 425
页数:12
相关论文
共 50 条
  • [1] Model-Driven Java']Java Code Refactoring
    Hamioud, Sohaib
    Atil, Fadila
    [J]. COMPUTER SCIENCE AND INFORMATION SYSTEMS, 2015, 12 (02) : 375 - 403
  • [2] Model-driven Consolidation of Java']Java Workloads on Multicores
    Ansaloni, Danilo
    Chen, Lydia Y.
    Smirni, Evgenia
    Binder, Walter
    [J]. 2012 42ND ANNUAL IEEE/IFIP INTERNATIONAL CONFERENCE ON DEPENDABLE SYSTEMS AND NETWORKS (DSN), 2012,
  • [3] Model-Driven Development of Java']Java Enterprise Applications
    Pflueger, Andre
    Golubski, Wolfgang
    Haubold, Tobias
    [J]. 22ND INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING & KNOWLEDGE ENGINEERING (SEKE 2010), 2010, : 787 - 790
  • [4] Mutation Testing for Java']Java based on Model-Driven Development
    Gonzalez, Ariel
    Luna, Carlos
    Bressan, Gonzalo
    [J]. 2018 XLIV LATIN AMERICAN COMPUTER CONFERENCE (CLEI 2018), 2018, : 1 - 10
  • [5] GeoJModelBuilder: A Java']Java Implementation of Model-Driven Approach for Geoprocessing Workflows
    Zhang, Mingda
    Yue, Peng
    [J]. 2013 SECOND INTERNATIONAL CONFERENCE ON AGRO-GEOINFORMATICS (AGRO-GEOINFORMATICS), 2013, : 391 - 395
  • [6] UML interaction model-driven runtime verification of Java']Java programs
    Li, X.
    Qiu, X.
    Wang, L.
    Chen, X.
    Zhou, Z.
    Yu, L.
    Zhao, J.
    [J]. IET SOFTWARE, 2011, 5 (02) : 142 - 156
  • [7] Model-driven consolidation of Java workloads on multicores
    Ansaloni, Danilo
    Chen, Lydia Y.
    Smirni, Evgenia
    Binder, Walter
    [J]. Proceedings of the International Conference on Dependable Systems and Networks, 2012,
  • [8] Model-driven Transformation-based Generation of Java']Java Stress Tests
    Winter, Victor L.
    [J]. ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2007, 174 (01) : 99 - 114
  • [9] Input Injection Detection in Java']Java Code
    Pasaribu, Edward Samuel
    Asnar, Yudistira
    Liem, M. M. Inggriani
    [J]. 2014 International Conference on Data and Software Engineering (ICODSE), 2014,
  • [10] Java']JavaML: a markup language for Java']Java source code
    Badros, GJ
    [J]. COMPUTER NETWORKS, 2000, 33 (1-6) : 159 - 177