Automatic testing of runtime enforcers with Test4Enforcers

被引:0
|
作者
Riganelli, Oliviero [1 ]
Micucci, Daniela [1 ]
Mariani, Leonardo [1 ]
机构
[1] Univ Milano Bicocca, Milan, Italy
关键词
Runtime enforcement; Testing enforcers; Test case generation; Android apps; DESIGN;
D O I
10.1016/j.jss.2023.111949
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Users regularly use apps to access services in a range of domains, such as health, productivity, entertainment, and business. The safety and correctness of the runtime behavior of these apps is thus a key concern for users. Indeed, unreliable apps may generate dissatisfaction, frustration and issues to users. Runtime enforcement techniques can be used to implement software enforcers that monitor executions and apply corrective actions when needed, potentially preventing misbehaviors and failures. However, enforcers might be faulty themselves, applying the wrong actions or missing to apply the right actions. To address this problem, this paper presents Test4Enforcers, an approach to automatically test software enforces. Test4Enforcers relies on an enforcement model describing the strategy that shall be applied at runtime to correct misbehaviors. Test4Enforcers first uses the enforcement model to derive a specification of the test cases that shall be executed to validate any software enforcer implemented from the given model. Then, it automatically turns the test specification into a set of concrete test cases that can be executed against apps augmented with the enforcers. We evaluated Test4Enforces with a set of 3,135 faults injected in the enforcers derived from 13 enforcement models. Results show that Test4Enforcers can automatically reveal 64% of the faults, while existing approaches relying on crash detection can only reveal 6% of the faults. Test4Enforcers is also practical since testing an enforcer required 9 min, in the worst case.
引用
收藏
页数:16
相关论文
共 50 条
  • [1] Test4Enforcers: Test Case Generation for Software Enforcers
    Guzman, Michell
    Riganelli, Oliviero
    Micucci, Daniela
    Mariani, Leonardo
    [J]. RUNTIME VERIFICATION (RV 2020), 2020, 12399 : 279 - 297
  • [2] Runtime Enforcement of Reactive Systems using Synchronous Enforcers
    Pinisetty, Srinivas
    Roop, Partha S.
    Smyth, Steven
    Tripakis, Stavros
    von Hanxleden, Reinhard
    [J]. SPIN'17: PROCEEDINGS OF THE 24TH ACM SIGSOFT INTERNATIONAL SPIN SYMPOSIUM ON MODEL CHECKING OF SOFTWARE, 2017, : 80 - 89
  • [3] Combining Symbolic Runtime Enforcers for Cyber-Physical Systems
    Andersson, Bjorn
    Chaki, Sagar
    de Niz, Dionisio
    [J]. RUNTIME VERIFICATION (RV 2017), 2017, 10548 : 68 - 84
  • [4] Runtime Interchange of Enforcers for Adaptive Attacks: A Security Analysis Framework for Drones
    Baird, Alex
    Pearce, Hammond
    Pinisetty, Srinivas
    Roop, Partha
    [J]. 2022 20TH ACM-IEEE INTERNATIONAL CONFERENCE ON FORMAL METHODS AND MODELS FOR SYSTEM DESIGN (MEMOCODE), 2022,
  • [5] Stress and law enforcers: testing the relationship between law enforcement work stressors and health-related issues
    Avdija, Avdi S.
    [J]. HEALTH PSYCHOLOGY AND BEHAVIORAL MEDICINE, 2014, 2 (01): : 100 - 110
  • [7] VECTOR ERROR TESTING BY AUTOMATIC TEST EQUIPMENT
    KARUBE, K
    [J]. HEWLETT-PACKARD JOURNAL, 1994, 45 (05): : 64 - 66
  • [8] Automatic Verification of Test Oracles In Functional Testing
    Monisha, T. R.
    Chamundeswari, A.
    [J]. 2013 FOURTH INTERNATIONAL CONFERENCE ON COMPUTING, COMMUNICATIONS AND NETWORKING TECHNOLOGIES (ICCCNT), 2013,
  • [9] Testing FPGA Devices on an Automatic Test Equipment
    Xie Weikun
    Zhang Huibin
    Zhang Qiuli
    [J]. 2013 IEEE INTERNATIONAL CONFERENCE ON INFORMATION AND AUTOMATION (ICIA), 2013, : 65 - 70
  • [10] Automatic Selection of Test Cases for Regression Testing
    Magalhaes, Claudio
    Barros, Flavia
    Mota, Alexandre
    Maia, Eliot
    [J]. I BRAZILIAN SYMPOSIUM ON SYSTEMATIC AND AUTOMATED SOFTWARE TESTING (SAST 2016), 2016,