Publication | Closed Access
On object state testing
94
Citations
8
References
2002
Year
Unknown Venue
EngineeringVerificationSoftware EngineeringSoftware AnalysisFormal VerificationModel-based TestingLanguage TestingState TestingSystems EngineeringTestabilityRuntime VerificationTesting TechniqueComputer EngineeringComputer ScienceStatic Program AnalysisSoftware DesignProgram AnalysisAutomated ReasoningSoftware TestingFormal MethodsObject-oriented ProgrammingObject State TestingSymbolic ExecutionSystem SoftwareState Machine
The importance of object state testing is illustrated through a simple example. We show that certain errors in the implementation of object state behavior cannot be readily detected by conventional structural testing, functional testing, and state testing. We describe an object state test model and outline a reverse engineering method for extracting object state behaviors from C++ source code. The object state test model is a hierarchical, concurrent, communicating state machine. It resembles the concepts of inheritance and aggregation in the object-oriented paradigm rather than the concept of state decomposition as in some existing models. The reverse engineering method is based on symbolic execution to extract the states and effects of the member functions. The symbolic execution results are used to construct the state machines. The usefulness of the model and of the method is discussed in the context of object state testing in the detection of a state behavior error. >
| Year | Citations | |
|---|---|---|
Page 1
Page 1