Preface

Testing even a simple system is a potentially infinite task. With tight budgets and schedules, testers need practical techniques, hands-on experience and the right strategies to effectively and efficiently test software.

This book puts those things right in the palm of your hands, literally. Through a sequence of thorough, practical, and, I hope, well-explained chapters, you’ll learn the following skills that are critical to software testing:

  • How to analyze the risks to system quality and allocate your testing effort appropriately based on the level of risk.

  • Different testing strategies and how to choose the right strategies every time, including effective strategies for handling regression testing.

  • How to design tests based on a system’s expected behavior (black box), including boundary values, equivalence partitioning, decision tables, use cases, state diagrams and tables, all-pairs tables, orthogonal arrays, and domain analysis

  • How to design tests based on a system’s internal structure (white box), including levels of code coverage, data-flow coverage, and basis-path coverage

  • How to plan and perform integration testing

  • How to use your intuition, experience, and knowledge to explore and attack the system

  • How to make all your hard work serve the needs of the project

Because testing is a hands-on activity, this book includes 11 complete chapters of realistic, life-sized exercises illustrating all the major test techniques, with detailed solutions.

If you’ve never read a book on test ...

Get Pragmatic Software Testing: Becoming an Effective and Efficient Test Professional now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.