The Craft of Software Testing: Subsystems Testing Including Object-Based and Object-Oriented Testing
For software developers test their own code or designs; independent testers testing someone else's code; and testers or developers testing bug fixes and other maintenance changes.
Table of Content
I. The Basic Technique
- Should You Read This Book?
- An Overview of Subsystem Testing.
II. Adopting Subsytem Testing
- The Specification.
- Introduction to the SREADHEX Example.
- Building the Test Requirement Checklist.
- Test Specifications.
- Test Drivers and Suite Drivers.
- Inspecting the Code with the Question Catalog.
- Using Coverage to Test the Test Suite.
- Cleaning Up.
- Miscellaneous Tips.
III. Subsystem Testing In Practice
- Getting Going.
- Getting Good.
IV. Examples And Extensions
- Using More Typical Specifications (Including None at All).
- Working with Large Subsystems.
- Testing Bug Fixes and Other Maintenance Changes.
- Testing Under Schedule Pressure.
V. Multiplying Test Requirements
- Syntax Testing.
- A Second Complete Example: MAX.
- Testing Persistent State.
- Simpler Test Requirement Multiplication.
- Multiplying Operation Test Requirements.
- Draws on common industry practice, the author's personal experience with testing, the author's clients, and users of GCT (Generic Coverage Tool).
- Promotes a philosophy of designing tests with constant attention to likely programmer mistakes.
- Uses C throughout, and the techniques apply equally well to C++ and other languages, and to object-oriented programs.
- Contains detailed, step-by-step examples.
- Provides a modern treatment of coverage and white box testing.
- Features unique material on testing bug fixes and other changes-e.g., how the test design process differs when you are testing changes.
- Includes several appendices that describe how to test common situations, and checklists for steps in the testing process.