Incremental Testing Of Object-Oriented Class Structures†
- 25 August 2005
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- No. 02705257,p. 68-80
- https://doi.org/10.1109/icse.1992.753491
Abstract
Although there is much interest in creating libraries of well-designed, thoroughly-tested classes that can be confi- dently reused for many applications, few class testing techniques have been developed. In this paper, we present a class testing technique that exploits the hierarchical nature of the inheritance relation to test related groups of classes by reusing the testing information for a parent class to guide the testing of a subclass. We initially test base classes having no parents by designing a test suite that tests each memberfunction individually and also tests the interactions among member functions. To design a test suite for a subclass, our algorithm incrementally updates the history of its parent to reflect both the modified, inherited attributes and the subclass's newly defined attributes. Only those new attributes or affected, inherited attributes are tested and the parent class test suites are reused, if possible, for the testing. Inherited attributes are retested in their new context in a subclass by testing their interactions with the subclass's newly defined attributes. We have incorporated a data flow tester into Free Software Foundation, Inc's C++ compiler and are using it for our experimentation.Keywords
This publication has 9 references indexed in Scilit:
- Selecting and using data for integration testingIEEE Software, 1991
- Understanding object-oriented: a unifying paradigmCommunications of the ACM, 1990
- Trellis: turning designs into programsCommunications of the ACM, 1990
- The cost of data flow testing: an empirical studyIEEE Transactions on Software Engineering, 1990
- Testing object-oriented software systemsPublished by Association for Computing Machinery (ACM) ,1990
- Test data selection criteria for (software) integration testingPublished by Institute of Electrical and Electronics Engineers (IEEE) ,1990
- Interprocedual data flow testingPublished by Association for Computing Machinery (ACM) ,1989
- An applicable family of data flow testing criteriaIEEE Transactions on Software Engineering, 1988
- Axiomatizing software test data adequacyIEEE Transactions on Software Engineering, 1986