Automatic feasible transition path generation from UML state chart diagrams using grouping genetic algorithms - Choi, Yoo-Min; Lim, Dong-Jin (Information and software technology, 2018)
Transition coverage testing, a testing technique using state charts of Unified Modeling Language (UML), requires generation of transition paths that cover all transitions. However, if a generated path is infeasible due to internal variables then the transition will not be executed according to the input sequence, resulting in a test failure. Thus, feasible transition paths (FTPs) must be generated to run transition coverage tests. Several automatic transition path generation studies have been conducted using genetic algorithms (GAs), but when generating a transition path using a GA, the dependent transition pairs serve as distractions. Furthermore, counter problems that require repeated execution of dependent transitions (for example, to test a failing operation of an automatic teller machine, the password must be incorrect three times) make FTP generation more difficult. In this study, to address these issues, an automatic FTP generation method using a grouping GA (GGA) is described. Considering the characteristics of the problem, modification of the original GGA is proposed. A chromosome initialized using information from the state chart, and generating transition coverage, satisfied FTP while adjusting the length of the chromosome. An experiment using the `inres initiator' state chart and the ‘ATM’ state chart generated FTPs successfully. In the case of the inres initiator state chart, the proposed GGA was shown to be capable of generating FTPs with a 100% success rate. In the case of the ATM state chart, the proposed GGA was shown to be capable of generating FTPs with a 100% success rate, by setting the maximum number of generations. The proposed GGA can be applied effectively to transition coverage testing using UML state charts, and can generate test paths suitable for testing purposes by setting the genetic parameter value and the maximum number of generations.