PTSG: a test generation tool based on extended finite state machine

09/21/2022
by   Zhijie Pan, et al.
0

The Extended Finite State Machine (EFSM) is one of the most popular modeling approaches for model-based testing. However, EFSM-based test case generation is susceptible to the infeasible (inexecutable) path problem, which stems from the conflict of predicates (guards) between transitions in the path. Therefore, in order to derive feasible test cases, a test generation algorithm needs to dynamically acquire information about the model and verify the feasibility of the generated test path through the simulation execution of the model. The traditional method of constructing executable models using hard-coding for different EFSM models under test has limitations such as inflexibility, time-consuming and error-prone. To address this issue, this paper develops an open source test generation tool for testing EFSM-specified systems, PTSG, to support the automatic generation of executable test cases. It decouples the EFSM model description, parsing and simulation execution functions from the test generation algorithm, which can effectively improve the efficiency and quality of test generation. In particular, PTSG first uses a well-designed JSON syntax to describe the specific EFSM under test. Then, based on the model description file, it uses lexical and syntactic parsers to dynamically extract model information to construct various model objects in memory such as state configurations, transitions, etc. Finally, the tool provide a series of service interfaces to support model information acquisition, transition feasibility evaluation, and model simulation execution. A case study of test sequence generation for the SCP protocol model demonstrates the capability and promise of the PTSG to serve executable test cases.

READ FULL TEXT
research
09/11/2020

Unit Test Case Generation with Transformers

Automated Unit Test Case generation has been the focus of extensive lite...
research
07/27/2023

StubCoder: Automated Generation and Repair of Stub Code for Mock Objects

Mocking is an essential unit testing technique for isolating the class u...
research
03/17/2022

Prioritized Variable-length Test Cases Generation for Finite State Machines

Model-based Testing (MBT) is an effective approach for testing when part...
research
05/16/2022

Regression Test Suite for Payment Switch using jPOS

The Payment Switch is an integral component of all modern payment and ba...
research
05/31/2021

CrossASR++: A Modular Differential Testing Framework for Automatic Speech Recognition

Developers need to perform adequate testing to ensure the quality of Aut...
research
05/22/2019

A Method for Classifying Test Bench Configurations in a Scenario-Based Test Approach for Automated Vehicles

The introduction of automated vehicles demands a way to prove their safe...
research
12/10/2021

Compositional Test Generation of Industrial Synchronous Systems

Synchronous systems provide a basic model of embedded systems and indust...

Please sign up or login with your details

Forgot password? Click here to reset