Automated Test Case Generation for Embedded Software Using Extended Interface Automata

With increasing size and complexity, more and more embedded systems are built from interconnected components. Testing is necessary to ensure the compatibility of composite components and the correctness of the integrated system. Interface automata (IAs) provide a light-weight formal method for modelling component external observable behaviour and component compositions. The paper presents a systematic method for automatic testing based on an extended IA (EIA) model. EIA enriches modelling capability by adding data and constraints to basic automata. Based on EIA, test path generation is then transformed to a search problem to traverse paths in the state model to achieve different model coverage. For each test path, a set of test data are generated by solving the constraints extracted from the transitions of the path. The paper analyses the proposed approach from four aspects: test adequacy, test case scale, test case correctness, and test effectiveness, using a simulated case study.