Title :
On object state testing
Author :
Kung, D. ; Suchak, N. ; Gao, J. ; Hsia, P. ; Toyoshima, Y. ; Chen, C.
Author_Institution :
Texas Univ., Arlington, TX, USA
Abstract :
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
Keywords :
inheritance; object-oriented programming; program testing; reverse engineering; symbol manipulation; C++ source code; aggregation; functional testing; hierarchical concurrent communicating state machine; implementation errors; inheritance; object state testing; reverse engineering method; state behavior error; state decomposition; structural testing; symbolic execution; Electrical capacitance tomography; Infrared detectors; Object detection; Object oriented modeling; Protocols; Samarium; Software testing; Software tools;
Conference_Titel :
Computer Software and Applications Conference, 1994. COMPSAC 94. Proceedings., Eighteenth Annual International
Conference_Location :
Taipei
Print_ISBN :
0-8186-6705-2
DOI :
10.1109/CMPSAC.1994.342801