Model Learning and Test Generation Using Cover Automata

被引:5
作者
Ipate, Florentin [1 ,2 ]
Stefanescu, Alin [1 ,2 ]
Dinca, Ionut [2 ]
机构
[1] Univ Bucharest, Dept Comp Sci, Bucharest, Romania
[2] Univ Pitesti, Dept Comp Sci, Pitesti, Romania
基金
芬兰科学院;
关键词
automata learning; model-based testing; formal methods; Event-B; Angluin's algorithm; FINITE; ALGORITHM;
D O I
10.1093/comjnl/bxu032
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
We propose an approach which, given a state-transition model of a system, constructs, in parallel, an approximate automaton model and a test suite for the system. The approximate model construction relies on a variant of Angluin's automata learning algorithm, adapted to finite cover automata. A finite cover automaton represents an approximation of the system that only considers sequences of length up to an established upper bound l. Crucially, the size of the cover automaton, which normally depends on l, can be significantly lower than the size of the exact automaton model. Thus, controlling l, the state explosion problem normally associated with constructing and checking state-based models can be mitigated. The proposed approach also allows for a gradual construction of the model and of the associated test suite, with complexity and time savings. Moreover, we provide automation of counterexample search, by a combination of black-box and random testing, and metrics to evaluate the quality of the produced results. The approach is presented and implemented in the context of the Event-B modeling language, but its underlying ideas and principles are much more general and can be applied to any system whose behavior can be suitably described by a state-transition model.
引用
收藏
页码:1140 / 1159
页数:20
相关论文
共 44 条
  • [1] ABRIAL J. R, 2009, 626 ETH ZUR
  • [2] Abrial J.R., 2010, MODELING EVENT B SYS
  • [3] Ammann P., 2008, Introduction to Software Testing", V1st edn, DOI 10.1017/9781316771273
  • [4] LEARNING REGULAR SETS FROM QUERIES AND COUNTEREXAMPLES
    ANGLUIN, D
    [J]. INFORMATION AND COMPUTATION, 1987, 75 (02) : 87 - 106
  • [5] [Anonymous], 2010, 9 INT S FORMAL METHO
  • [6] Finding Bugs in Web Applications Using Dynamic Test Generation and Explicit-State Model Checking
    Artzi, Shay
    Kiezun, Adam
    Dolby, Julian
    Tip, Frank
    Dig, Danny
    Paradkar, Amit
    Ernst, Michael D.
    [J]. IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2010, 36 (04) : 474 - 494
  • [7] Bendisposto J, 2011, LECT NOTES COMPUT SC, V6603, P50, DOI 10.1007/978-3-642-19811-3_5
  • [8] Berg T, 2005, LECT NOTES COMPUT SC, V3442, P175, DOI 10.1007/978-3-540-31984-9_14
  • [9] Minimal cover-automata for finite languages
    Câmpeanu, C
    Sântean, N
    Yu, S
    [J]. THEORETICAL COMPUTER SCIENCE, 2001, 267 (1-2) : 3 - 16
  • [10] Incremental construction of minimal deterministic finite cover automata
    Campeanu, Cezar
    Paun, Andrei
    Smith, Jason R.
    [J]. THEORETICAL COMPUTER SCIENCE, 2006, 363 (02) : 135 - 148