Towards a statistical approach to testing object-oriented programs

Statistical testing is based on a probabilistic generation of test data: structural or functional criteria serve as guides for defining an input profile and a test size. Previous work has confirmed the high fault revealing power of this approach for procedural programs; it is now investigated for object-oriented programs. A method for incremental statistical testing is defined at the cluster level, based on the class inheritance hierarchy. Starting from the root class of the program, descendant class(es) are gradually added and test data are designed for (i) structural testing of newly defined features and, (ii) regression testing of inherited features. The feasibility of the method is exemplified by a small case study (a Travel Agency) implemented in Eiffel.

[1]  Kim Walden,et al.  Seamless object-oriented software architecture , 1995 .

[2]  Yves Crouzet,et al.  Software Statistical Testing , 1995 .

[3]  Elaine J. Weyuker,et al.  Axiomatizing software test data adequacy , 1986, IEEE Transactions on Software Engineering.

[4]  Bertrand Meyer,et al.  Eiffel: The Language , 1991 .

[5]  簡聰富,et al.  物件導向軟體之架構(Object-Oriented Software Construction)探討 , 1989 .

[6]  William E. Howden,et al.  Functional program testing and analysis , 1986 .

[7]  Marie-Claude Gaudel,et al.  Software testing based on formal specifications: a theory and a tool , 1991, Softw. Eng. J..

[8]  Jeffrey M. Voas Object-Oriented Software Testability , 1996 .

[9]  Cécile Péraire,et al.  A Theory of Specification-Based Testing for Object-Oriented Software , 1996, EDCC.

[10]  Peter Wegner,et al.  Tutorial Notes: Models and Paradigms of Interaction , 1995 .

[11]  Alfred Strohmeier,et al.  Open Issues in Testing Object-Oriented Software , 1994 .

[12]  John D. McGregor,et al.  Understanding object-oriented: a unifying paradigm , 1990, CACM.

[13]  Capers Jones Gaps in Programming Educations , 1995, Computer.

[14]  Peter Wegner,et al.  Dimensions of object-based language design , 1987, OOPSLA '87.

[15]  Hélène Waeselynck,et al.  STATEMATE applied to statistical software testing , 1993, ISSTA '93.

[16]  D. J. Robson,et al.  Object-oriented programming-the problems of validation , 1990, Proceedings. Conference on Software Maintenance 1990.

[17]  Glenford J. Myers,et al.  Art of Software Testing , 1979 .

[18]  David Chenho Kung,et al.  Developing an object-oriented software testing and maintenance environment , 1995, CACM.

[19]  Phyllis G. Frankl,et al.  The ASTOOT approach to testing object-oriented programs , 1994, TSEM.

[20]  Richard G. Hamlet Theoretical comparison of testing methods , 1989 .

[21]  KungDavid,et al.  Developing an object-oriented software testing and maintenance environment , 1995 .

[22]  Yves Crouzet,et al.  An experimental study on software structural testing: deterministic versus random input generation , 1991, [1991] Digest of Papers. Fault-Tolerant Computing: The Twenty-First International Symposium.

[23]  Gail E. Kaiser,et al.  Adequate testing and object-oriented programming , 1990 .

[24]  David Chenho Kung,et al.  Design recovery for software testing of object-oriented programs , 1993, [1993] Proceedings Working Conference on Reverse Engineering.

[25]  Paul C. Jorgensen,et al.  Object-oriented integration testing , 1994, CACM.

[26]  John D. McGregor,et al.  Incremental testing of object-oriented class structures , 1992, ICSE '92.

[27]  Pascale Thévenod-Fosse,et al.  Software error analysis: a real case study involving real faults and mutations , 1996, ISSTA '96.

[28]  Robert V. Binder,et al.  Testing object‐oriented software: a survey , 1996 .