Test Generation and Test Prioritization for Simulink Models with Dynamic Behavior

被引:57
作者
Matinnejad, Reza [1 ]
Nejati, Shiva [1 ]
Briand, Lionel C. [1 ]
Bruckmann, Thomas [2 ]
机构
[1] Univ Luxembourg, SnT Ctr Secur Reliabil & Trust, L-2721 Luxembourg, Luxembourg
[2] Delphi Automot Syst, L-4940 Luxembourg, Luxembourg
基金
欧洲研究理事会;
关键词
Simulink models; search-based software testing; test generation; test prioritization; test oracle; output diversity; signal features; structural coverage; TOOL; VERIFICATION; FRAMEWORK; CHECKING; SOFTWARE; LANGUAGE;
D O I
10.1109/TSE.2018.2811489
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
All engineering disciplines are founded and rely on models, although they may differ on purposes and usages of modeling. Among the different disciplines, the engineering of Cyber Physical Systems (CPSs) particularly relies on models with dynamic behaviors (i.e., models that exhibit time-varying changes). The Simulink modeling platform greatly appeals to CPS engineers since it captures dynamic behavior models. It further provides seamless support for two indispensable engineering activities: (1) automated verification of abstract system models via model simulation, and (2) automated generation of system implementation via code generation. We identify three main challenges in the verification and testing of Simulink models with dynamic behavior, namely incompatibility, oracle and scalability challenges. We propose a Simulink testing approach that attempts to address these challenges. Specifically, we propose a black-box test generation approach, implemented based on meta-heuristic search, that aims to maximize diversity in test output signals generated by Simulink models. We argue that in the CPS domain test oracles are likely to be manual and therefore the main cost driver of testing. In order to lower the cost of manual test oracles, we propose a test prioritization algorithm to automatically rank test cases generated by our test generation algorithm according to their likelihood to reveal a fault. Engineers can then select, according to their test budget, a subset of the most highly ranked test cases. To demonstrate scalability, we evaluate our testing approach using industrial Simulink models. Our evaluation shows that our test generation and test prioritization approaches outperform baseline techniques that rely on random testing and structural coverage.
引用
收藏
页码:919 / 944
页数:26
相关论文
共 122 条
[1]   Probabilistic Temporal Logic Falsification of Cyber-Physical Systems [J].
Abbas, Houssam ;
Fainekos, Georgios ;
Sankaranarayanan, Sriram ;
Ivancic, Franjo ;
Gupta, Aarti .
ACM TRANSACTIONS ON EMBEDDED COMPUTING SYSTEMS, 2013, 12
[2]  
Alshahwan N., 2014, ISSTA 2014, P181, DOI 10.1145/2610384.2610413
[3]  
Alshahwan N, 2012, PROC INT CONF SOFTW, P1345, DOI 10.1109/ICSE.2012.6227083
[4]  
Annapureddy Y, 2011, LECT NOTES COMPUT SC, V6605, P254, DOI 10.1007/978-3-642-19835-9_21
[5]  
[Anonymous], REACT COV METR
[6]  
[Anonymous], 2009, P GENETIC EVOLUTIONA
[7]  
[Anonymous], 2004, Control System Engineering
[8]  
[Anonymous], ACM SIGSOFT SOFTW EN
[9]  
[Anonymous], PROC INT CONF SOFTW
[10]  
[Anonymous], 2000, GENERATIVE PROGRAMMI