The requirements for testing object–oriented programs differ from those for testing conventional programs. Testing Object–Oriented Software illustrates these differences and discusses object–oriented software testing problems, focusing on the difficulties and challenges testers face. The book provides a general framework for class– and system–level testing and examines object–oriented design criteria and high testability metrics. It offers object–oriented testing techniques, ideas and methods for unit testing, and object–oriented program integration–testing strategy.
Readers are shown how they can drastically reduce regression test costs, presented with steps for object–oriented testing, and introduced to object–oriented test tools and systems. In addition to software testing problems, the text covers various test methods developers can use during the design phase to generate programs with good testability. The book′s intended audience includes object–oriented program testers, program developers, software project managers, and researchers working with object–oriented testing.
Chapter 1. OO Testing Problems.
Adequate Testing and Object–Oriented Programming (Dewayne E. Perry and Gail E. Kaiser).
Object–Oriented Programming––The Problems of Validation (M.D. Smith and D.J. Robson).
Maintenance Support for Object–Oriented Programs (Norman Wilde and Ross Huitt).
Chapter 2. Specification and Verification.
Design for Testability in Object–Oriented Systems (Robert V. Binder).
Method Sequence Specification and Verification of Classes (Shekhar Kirani and W.T. Tsai).
Chapter 3. Unit Testing and Integration Testing.
A Class Testing Technique Based on Data Bindings (Heechern Kim and Chisu Wu).
Automated Flow Graph–Based Testing of Object–Oriented Software Modules (Allen S. Parrish, et al.).
Object–Oriented Integration Testing (Paul C. Jorgensen and Carl Erickson).
Chapter 4. Regression Testing.
Change Impact Identification in Object–Oriented Software Maintenance (D. Kung, et al.).
Selecting Regression Tests for Object–Oriented Software (Gregg Rothermel and Mary Jean Harrold).
A Technique for the Selective Ravalidation of OO Software (Pei Hsia, et al.).
Chapter 5. Object State Testing.
Object State Testing and Fault Analysis for Reliable Software Systems (D. Kung, et al.).
The State–Based Testing of Object–Oriented Programs (C.D. Turner and D.J. Robson).
ClassBench: A Framework for Automated Class Testing (Daniel Hoffman and Paul Strooper).
Chapter 6. Test Methodology.
Incremental Testing of Object–Oriented Class Structures (Mary Jean Harrold, et al.).
Integrated Object–Oriented Testing and Development Processes (John D. McGregor and Timothy D. Korson).
Chapter 7. Test Tools.
Developing an Object–Oriented Software Testing and Maintenance Environment (David Kung, et al.).
The ASTOOT Approach to Testing Object–Oriented Programs (Roong–Ko Doong and Phyllis G. Frankl).
Automated Testing from Object Models (Robert M. Poston).