In this paper we propose a method and a tool to generate test suites from extended finite state machines, accounting for multiple (potentially conflicting) objectives. We aim at maximizing coverage and feasibility of a test suite while minimizing similarity between its test cases and minimizing overall cost. Therefore, we define a multi-objective genetic algorithm that searches for optimal test suites based on four objective functions. In doing so, we create an entire test suite at once as opposed to test cases one at a time. Our approach is evaluated on two different case studies, showing interesting initial results.
Abstract. We propose a test suite generation technique from extended finite state machines based on a genetic algorithm that fulfills multiple (conflicting) objectives. We aim at maximizing coverage and feasibility of a set of test cases while minimizing similarity between these cases and minimizing overall cost.
IntroductionExtended Finite State Machines (EFSMs) are widely used in system modeling and a great volume of research exists in the area of state-based testing. Due to the presence of guard conditions and action in the EFSM, not all the paths in an EFSM are feasible [1]. Another challenge is decreasing cost and increasing effectiveness of generated test suites to make them scalable to large industrial applications. This can be achieved for instance through increasing test case diversity [2]. Search-Based Software Engineering (SBSE) has emerged in the field of software engineering since the nature of software engineering problems makes them perfect for the application of meta-heuristic search techniques. Search-based methods can be very helpful in solving problems in which there are tradeoffs between different constraints. They can provide solutions when optima are either theoretically impossible or practically infeasible [3]. SBSE has proved to be very successful and there has been a significant increase in the interest and research contributions in this field in the past five years [5]. One of the first applications of SSBSE has been in software testing and dates back to 1976 [6]. In search-based software testing (SBST) a meta-heuristic search method is used to automate or partially automate a testing task [4].In this paper, we propose an SBST technique for test suite generation from EFSMs. We use a multi-objective genetic algorithm to search for an adequate test suite that is most likely feasible, has minimum cost, and has low similarity between its test paths.
Related WorkOthers before us have investigated the application of SBST to state-based testing. Hemmati et al. proposed a similarity based test case selection technique that uses search based techniques to maximize test case diversity [2]. In a series of case studies they used different similarity measures as fitness function and considered different
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.