Book Image

Software Testing Strategies

By : Matthew Heusser, Michael Larsen
Book Image

Software Testing Strategies

By: Matthew Heusser, Michael Larsen

Overview of this book

Software Testing Strategies covers a wide range of topics in the field of software testing, providing practical insights and strategies for professionals at every level. With equal emphasis on theoretical knowledge and practical application, this book is a valuable resource for programmers, testers, and anyone involved in software development. The first part delves into the fundamentals of software testing, teaching you about test design, tooling, and automation. The chapters help you get to grips with specialized testing areas, including security, internationalization, accessibility, and performance. The second part focuses on the integration of testing into the broader software delivery process, exploring different delivery models and puzzle pieces contributing to effective testing. You’ll discover how to craft your own test strategies and learn about lean approaches to software testing for optimizing processes. The final part goes beyond technicalities, addressing the broader context of testing. The chapters cover case studies, experience reports, and testing responsibilities, and discuss the philosophy and ethics of software testing. By the end of this book, you’ll be equipped to elevate your testing game and ensure software quality, and have an indispensable guide to the ever-evolving landscape of software quality assurance.
Table of Contents (22 chapters)
1
Part 1:The Practice of Software Testing
9
Part 2:Testing and Software Delivery
14
Part 3:Practicing Politics

The programmer’s view

It’s common to think of programmer (automated) tests in terms of unit (smallest piece), integration (components interaction), and system (the entire application or business process). As the piece that’s being tested becomes smaller, it tends to run faster, with less setup, change less often, and be easier to reproduce.

In the early 2000s, Mike Cohn and Jason Huggins independently came up with a vision for this called the test automation pyramid. A popular view of this pyramid, as imagined by Seb Rose (https://cucumber.io/blog/bdd/eviscerating-the-test-automation-pyramid/), is shown here:

Figure 3.1 – The traditional test automation pyramid

Figure 3.1 – The traditional test automation pyramid

Image source: https://martinfowler.com/articles/practical-test-pyramid.html

The purpose of the pyramid, according to Cohn, was to shift the focus and emphasis from end-to-end user interface tests, which are easily done by a human, yet slow and brittle, to the faster...