SimEvo: Testing Evolving Multi-Process Software Systems

被引:2
|
作者
Yu, Tingting [1 ]
机构
[1] Univ Kentucky, Dept Comp Sci, Lexington, KY 40506 USA
关键词
IMPACT ANALYSIS;
D O I
10.1109/ICSME.2017.29
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Regression testing is used to perform re-validation of evolving software. However, most existing techniques for regression testing focus exclusively on single-process applications, but to date, no work has considered regression testing for software involving multiple processes or event handlers (e.g., software signals) at the system-level. The unique characteristics of concurrency control mechanism employed at the system-level can affect the static and dynamic analysis techniques on which existing regression testing approaches rely. Therefore, applying these approaches can result in inadequately tested software during maintenance, and ultimately impair software quality. In this paper, we propose SimEvo, the first regression testing techniques for multi-process applications. SimEvo employs novel impact analysis techniques to identify system-level concurrent events that are affected by the changes. It then reuses existing test cases, as well as generating new test cases, focused on the set of impacted events, to effectively and efficiently explore the newly updated concurrent behaviors. Our empirical study on a set of real-world Linux applications shows that SimEvo is more cost-effective in achieving high inter-process coverage and revealing real world system-level concurrency faults than other approaches.
引用
收藏
页码:204 / 215
页数:12
相关论文
共 50 条
  • [31] Synchronization detection for multi-process hierarchical synthesis
    Bringmann, O
    Rosenstiel, W
    Reichardt, D
    [J]. 11TH INTERNATIONAL SYMPOSIUM ON SYSTEM SYNTHESIS - PROCEEDINGS, 1998, : 105 - 110
  • [32] An Icon-Based Methodology for the Design of a Prototype of a Multi-Process, Multi-Product, Aggregated Production Planning Software
    Miranda-Meza, Erick
    Derpich, Ivan
    Sepulveda, Juan M.
    [J]. MATHEMATICS, 2024, 12 (02)
  • [33] INVESTMENT-CASTING - A MULTI-PROCESS TECHNOLOGY
    BARNETT, SO
    [J]. METALLURGIA, 1989, 56 (07): : 275 - 276
  • [34] Multi-Process Tools for Fabrication, Assembly and Inspection
    Bi, Z. M.
    [J]. PRODUCT DESIGN AND MANUFACTURING, 2011, 338 : 670 - 676
  • [36] Web applications design with a multi-process approach
    Selmi, SS
    Kraiem, N
    Ben Ghezala, H
    [J]. WEB ENGINEERING, PROCEEDINGS, 2005, 3579 : 512 - 521
  • [37] Safe Process Quitting for GPU Multi-Process Service (MPS)
    Wu, Hao
    Liu, Wei
    Gong, Yifan
    Jin, Jiangming
    [J]. 2020 IEEE 40TH INTERNATIONAL CONFERENCE ON DISTRIBUTED COMPUTING SYSTEMS (ICDCS), 2020, : 1169 - 1170
  • [38] Augmenting Computer-Aided Design Software With Multi-Functional Capabilities to Automate Multi-Process Additive Manufacturing
    Bailey, Callum
    Aguilera, Efrain
    Espalin, David
    Motta, Jose
    Fernandez, Alfonso
    Perez, Mireya A.
    Dibiasio, Christopher
    Pryputniewicz, Dariusz
    Macdonald, Eric
    Wicker, Ryan B.
    [J]. IEEE ACCESS, 2018, 6 : 1985 - 1994
  • [39] Multi-period mine planning with multi-process routes
    Kumral, Mustafa
    [J]. INTERNATIONAL JOURNAL OF MINING SCIENCE AND TECHNOLOGY, 2013, 23 (03) : 317 - 321
  • [40] Fault tolerance makespan synthesis in multi-process systems via resource sharing and backtracking
    Chen, Gang
    Lu, Yu
    Su, Rong
    [J]. IFAC PAPERSONLINE, 2022, 55 (28): : 30 - 37