Supporting inheritance hierarchy changes in model-based regression test selection

被引:2
|
作者
Al-Refai, Mohammed [1 ]
Ghosh, Sudipto [1 ]
Cazzola, Walter [2 ]
机构
[1] Colorado State Univ, Dept Comp Sci, Ft Collins, CO 80523 USA
[2] Univ Milan, Dept Comp Sci, Milan, Italy
来源
SOFTWARE AND SYSTEMS MODELING | 2019年 / 18卷 / 02期
基金
美国国家科学基金会;
关键词
Executable UML models; Inheritance hierarchy; Model-based adaptation; Model-based regression test selection; Model validation; Runtime adaptation; UML activity diagram; UML class diagram;
D O I
10.1007/s10270-017-0636-3
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Models can be used to ease and manage the development, evolution, and runtime adaptation of a software system. When models are adapted, the resulting models must be rigorously tested. Apart from adding new test cases, it is also important to perform regression testing to ensure that the evolution or adaptation did not break existing functionality. Since regression testing is performed with limited resources and under time constraints, regression test selection (RTS) techniques are needed to reduce the cost of regression testing. Applying model-level RTS for model-based evolution and adaptation is more convenient than using code-level RTS because the test selection process happens at the same level of abstraction as that of evolution and adaptation. In earlier work, we proposed a model-based RTS approach called MaRTS to be used with a fine-grained model-based adaptation framework that targets applications implemented in Java. MaRTS uses UML models consisting of class and activity diagrams. It classifies test cases as obsolete, reusable, or retestable based on changes made to UML class and activity diagrams of the system being adapted. However, MaRTS did not take into account the changes made to the inheritance hierarchy in the class diagram and the impact of these changes on the selection of test cases. This paper extends MaRTS to support such changes and demonstrates that the extended approach performs as well as or better than code-based RTS approaches in safely selecting regression test cases. While MaRTS can generally be used during any model-driven development or model-based evolution activity, we have developed it in the context of runtime adaptation. We evaluated the extended MaRTS on a set of applications and compared the results with code-based RTS approaches that also support changes to the inheritance hierarchy. The results showed that the extended MaRTS selected all the test cases relevant to the inheritance hierarchy changes and that the fault detection ability of the selected test cases was never lower than that of the baseline test cases. The extended MaRTS achieved comparable results to a graph-walk code-based RTS approach (DejaVu) and showed a higher reduction in the number of selected test cases when compared with a static analysis code-based RTS approach (ChEOPSJ).
引用
收藏
页码:937 / 958
页数:22
相关论文
共 50 条
  • [1] Supporting inheritance hierarchy changes in model-based regression test selection
    Mohammed Al-Refai
    Sudipto Ghosh
    Walter Cazzola
    Software & Systems Modeling, 2019, 18 : 937 - 958
  • [2] A Model-Based Regression Test Selection Technique
    Naslavsky, Leila
    Ziv, Hadar
    Richardson, Debra J.
    2009 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, CONFERENCE PROCEEDINGS, 2009, : 515 - 518
  • [3] A Fuzzy Logic Based Approach for Model-based Regression Test Selection
    Al-Refai, Mohammed
    Cazzola, Walter
    Ghosh, Sudipto
    2017 ACM/IEEE 20TH INTERNATIONAL CONFERENCE ON MODEL DRIVEN ENGINEERING LANGUAGES AND SYSTEMS (MODELS 2017), 2017, : 55 - 62
  • [4] Model-based Regression Test Selection for Validating Runtime Adaptation of Software Systems
    Al-Refai, Mohammed
    Ghosh, Sudipto
    Cazzola, Walter
    2016 9TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE TESTING, VERIFICATION AND VALIDATION (ICST), 2016, : 288 - 298
  • [5] Symbolic Model-based Test Selection
    Jeron, Thierry
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2009, 240 (0C) : 167 - 184
  • [6] Model-based regression test case prioritization
    Panigrahi C.R.
    Mall R.
    Communications in Computer and Information Science, 2010, 54 : 380 - 385
  • [7] Model-Based Regression Test Case Prioritization
    Panigrahi, Chhabi Rani
    Mall, Rajib
    INFORMATION SYSTEMS, TECHNOLOGY AND MANAGEMENT, PROCEEDINGS, 2010, 54 : 380 - 385
  • [8] Supporting the Combined Selection of Model-Based Testing Techniques
    Dias-Neto, Arilo Claudio
    Travassos, Guilherme Horta
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2014, 40 (10) : 1025 - 1041
  • [9] Supporting Multiplicity and Hierarchy in Model-Based Configuration: Experiences and Lessons Learned
    Rabiser, Rick
    Vierhauser, Michael
    Gruenbacher, Paul
    Dhungana, Deepak
    Schreiner, Herwig
    Lehofer, Martin
    MODEL-DRIVEN ENGINEERING LANGUAGES AND SYSTEMS, MODELS 2014, 2014, 8767 : 320 - 336
  • [10] Bridging the model-to-code abstraction gap with fuzzy logic in model-based regression test selection
    Walter Cazzola
    Sudipto Ghosh
    Mohammed Al-Refai
    Gabriele Maurina
    Software and Systems Modeling, 2022, 21 : 207 - 224