2022/03/17 by Vaclav Rechtberger, Miroslav Bureš, Rechtberger, Vaclav +9
Computer Science · #Artificial Intelligence (cs.AI) #FOS: Computer and information sciences #Formal Languages and Automata Theory (cs.FL) #Formal Methods in Verification #Software Engineering (cs.SE) #Software Reliability and Analysis Research #Software Testing and Debugging Techniques
paper · pdf · doi:10.48550/arxiv.2203.09596
openalex publication_date 2022/03/17 · openalex created_date 2022/05/05 · openalex updated_date 2026/07/28
Model-based Testing (MBT) is an effective approach for testing when parts of\na system-under-test have the characteristics of a finite state machine (FSM).\nDespite various strategies in the literature on this topic, little work exists\nto handle special testing situations. More specifically, when concurrently: (1)\nthe test paths can start and end only in defined states of the FSM, (2) a\nprioritization mechanism that requires only defined states and transitions of\nthe FSM to be visited by test cases is required, and (3) the test paths must be\nin a given length range, not necessarily of explicit uniform length. This paper\npresents a test generation strategy that satisfies all these requirements. A\nconcurrent combination of these requirements is highly practical for real\nindustrial testing. Six variants of possible algorithms to implement this\nstrategy are described. Using a mixture of 180 problem instances from real\nautomotive and defense projects and artificially generated FSMs, all variants\nare compared with a baseline strategy based on an established N-switch coverage\nconcept modification. Various properties of the generated test paths and their\npotential to activate fictional defects defined in FSMs are evaluated. The\npresented strategy outperforms the baseline in most problem configurations. Out\nof the six analyzed variants, three give the best results even though a\nuniversal best performer is hard to identify. Depending on the application of\nthe FSM, the strategy and evaluation presented in this paper are applicable\nboth in testing functional and non-functional software requirements.\n