Synopses & Reviews
When this book was first published in 1979, software testing was far from an exact science. Considered the "dark art" of software development, it was a little-understood process without a set of standard principles.Twenty-five years later, testing hasnt really changedbut The Art of Software Testing has.
In addition to all the major software testing topicssuch as higher-order testing, white- and black-box testing, debugging, code inspections, and walkthroughsthis fully updated Second Edition features up-to-date information on testing twenty-first-century software projects, including vital Internet-based e-commerce applications, as well as details on Extreme Testing, which supports the widely used Extreme Programming development methodology.
Just like the first edition, this revision fills the gaps in the professional literature and provides a practical, rather than theoretical, discussion of the purpose, nature, and principles of proper testing. While the book focuses on methodologies for the design of effective test cases, it also covers the psychological and economic issues that are essential to a full understanding of program testing.
Many programming students enter the workforce without the proper understanding of software testing. This book covers all the essential topics for those students, but also provides all the detail and precision that working programmers might need during the testing phase. Appropriate for programmers and students at any level, The Art of Software Testing, Second Edition presents all the latest new ideas and techniquesmany illustrated with helpful examples. Comprehensive and always practical, this essential guide includes code-inspection checklists, a self-assessment test, and other resources programmers need for effective testingand fewer bugs.
This long-awaited revision of a bestseller provides a practical discussion of the nature and aims of software testing. You'll find the latest methodologies for the design of effective test cases, including information on psychological and economic principles, managerial aspects, test tools, high-order testing, code inspections, and debugging. Accessible, comprehensive, and always practical, this edition provides the key information you need to test successfully, whether a novice or a working programmer. Buy your copy today and end up with fewer bugs tomorrow.
Practical, up-to-date tactics and techniques for successful, efficient testing:
- Basic testing principles and strategies
- Program inspections and walkthroughs
- Code inspections
- Error checklists
- Peer ratings
- Black- and white-box testing
- Error guessing
- Top-down vs. bottom-up testing
- Higher-order testing
- Function and system testing
- Acceptance testing
- Installation testing
- Module (unit) testing
- Test planning and control
- Independent testing agencies
- Debugging principles
- Error analysis
- Extreme Testing
- Testing Internet applications
- Higher-order testing of e-commerce architectures
Provides a practical rather than theoretical discussion of the purpose and nature of software testing. Emphasizes methodologies for the design of effective test cases. Comprehensively covers psychological and economic principles, managerial aspects of testing, test tools, high-order testing, code inspections, and debugging. Extensive bibliography. Programmers at all levels, and programming students, will find this reference work indispensible.
Table of Contents
List of Figures and Tables.
Chapter 1:A Self-Assessment Test.
Chapter 2:The Psychology and Economics of Program Testing.
The Psychology of Testing.
The Economics of Testing.
Software Testing Principles.
Chapter 3:Program Inspections, Walkthroughs, and Reviews.
Inspections and Walkthroughs.
An Error Checklist for Inspections.
Data Reference Errors.
Chapter 4:Test-Case Design.
Chapter 5:Module (Unit) Testing.
Top-down versus Bottom-up Testing.
Performing the Test.
Chapter 6:Higher-Order Testing.
Performing the System Test.
Test Planning and Control.
Test Completion Criteria.
The Independent Test Agency.
Debugging by Brute Force.
Debugging by Induction.
Debugging by Deduction.
Debugging by Backtracking.
Debugging by Testing.
Chapter 8:Extreme Testing.
Extreme Programming Basics.
Extreme Testing: The Concepts.
Extreme Unit Testing.
Extreme Testing Applied.
Test Driver and Application.
Chapter 9:Testing Internet Applications.
Basic E-commerce Architecture.
Presentation Layer Testing.
Business Layer Testing.
Data Layer Testing.
Appendix A: Sample Extreme Testing Application.
Appendix B: Prime Numbers Less Than 1,000.