Specification based testing is a common method in software testing. Specification based testing is divided into behavior-based testing, such as finite state machine method; and input-based testing, ...