
Preface xiii
Acknowledgments xix
PART I: PRELIMINARIES 1
1. BASICS OF SOFTWARE TESTING 3
1.1. HUMANS, ERRORS, AND TESTING 4
1.1.1. Errors, faults, and failures 5
1.1.2. Test automation 7
1.1.3. Developer and tester as two roles 7
1.2. SOFTWARE QUALITY 8
1.2.1. Quality attributes 8
1.2.2. Reliability 10
1.3. REQUIREMENTS, BEHAVIOR, AND CORRECTNESS 11
1.3.1. Input domain and program correctness 12
1.3.2. Valid and invalid inputs 13
1.4. CORRECTNESS VERSUS RELIABILITY 15
1.4.1. Correctness 15
1.4.2. Reliability 16
1.4.3. Program use and the operational profile 16
1.5. TESTING AND DEBUGGING 17
1.5.1. Preparing a test plan 17
1.5.2. ...