Object-oriented programming increases software reusability, extensibility, interoperability, and reliability. Software testing is necessary to realize these benefits by uncovering as many programming errors as possible at a minimum cost. A major challenge to the software engineering community remains how to reduce the cost while improving the quality of software testing. 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 text contains of nineteen reprinted papers providing 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 to drastically reduce regression test costs, presented with steps for object-oriented testing, and introduced to object-oriented test tools and systems. The book's intended audience includes object-oriented program testers, program developers, software project managers, and researchers working with object-oriented testing.