Page 18 -
P. 18
CONTENTS xvii
17.5.2 Data Flow Testing 456
17.5.3 Loop Testing 458
17.6 Black-Box Testing 459
17.6.1 Graph-Based Testing Methods 460
17.6.2 Equivalence Partitioning 463
17.6.3 Boundary Value Analysis 465
17.6.4 Comparison Testing 465
17.6.5 Orthogonal Array Testing 466
17.7 Testing for Specialized Environments, Architectures, and Applications 468
17.7.1 Testing GUIs 469
17.7.2 Testing of Client/Server Architectures 469
17.7.3 Testing Documentation and Help Facilities 469
17.7.4 Testing for Real-Time Systems 470
17.8 Summary 472
REFERENCES 473
PROBLEMS AND POINTS TO PONDER 474
FURTHER READINGS AND INFORMATION SOURCES 475
CHAPTER 18 SOFTWARE TESTING STRATEGIES 477
18.1 A Strategic Approach to Software Testing 478
18.1.1 Verification and Validation 479
18.1.2 Organizing for Software Testing 479
18.1.3 A Software Testing Strategy 480
18.1.4 Criteria for Completion of Testing 482
18.2 Strategic Issues 484
18.3 Unit Testing 485
18.3.1 Unit Test Considerations 485
18.3.2 Unit Test Procedures 487
18.4 Integration Testing 488
18.4.1 Top-down Integration 488
18.4.2 Bottom-up Integration 490
18.4.3 Regression Testing 491
18.4.4 Smoke Testing 492
18.4.5 Comments on Integration Testing 493
18.4.6 Integration Test Documentation 494
18.5 Validation Testing 495
18.5.1 Validation Test Criteria 495
18.5.2 Configuration Review 496
18.5.3 Alpha and Beta Testing 496
18.6 System Testing 496
18.6.1 Recovery Testing 497
18.6.2 Security Testing 497
18.6.3 Stress Testing 498
18.6.4 Performance Testing 498
18.7 The Art of Debugging 499
18.7.1 The Debugging Process 499
18.7.2 Psychological Considerations 500
18.7.3 Debugging Approaches 501
18.8 Summary 502
REFERENCES 503
PROBLEMS AND POINTS TO PONDER 504
FURTHER READINGS AND INFORMATION SOURCES 505