Understanding the Psychology of Testing

Manish Saini
3 min readMay 26, 2023

--

Originally Posted at : https://thetestingarchitect.substack.com/p/understanding-the-psychology-of-testing

Software testing is a complex and demanding process that requires a wide range of skills, knowledge, and expertise. While many people focus on the technical aspects of testing, it is equally important to understand the psychological factors that affect the testing process. In this article, we will explore the key psychological concepts and techniques that are essential for software developers in the test.

Heuristics

Heuristics are mental shortcuts or rules of thumb that we use to make decisions quickly and efficiently. They are essential in testing because they allow testers to rapidly identify potential issues and defects. However, heuristics can also lead to biases and errors if they are not used properly.

One common heuristic used in testing is the “happy path” heuristic. This heuristic assumes that everything will work as intended and only tests the most common scenarios. While this can be useful in certain situations, it can also lead to overlooking edge cases and potential defects that may occur in real-world scenarios.

Another heuristic used in testing is the “follow the data” heuristic. This heuristic involves focusing on the system’s data flow and identifying potential issues in data transformation or manipulation. This can be useful in identifying defects related to data processing or storage.

Biases

Biases are cognitive biases or mental shortcuts that can influence our decision-making processes. They can be conscious or unconscious, affecting our perception of information and our ability to make rational decisions.

One common bias in testing is the confirmation bias. This bias occurs when we search for information that confirms our preconceptions or beliefs and ignore information that contradicts them. In testing, this bias can lead to overlooking potential defects or dismissing information that may be critical to the testing process.

Another bias in testing is the availability bias. This bias occurs when we rely on information that is readily available or easily accessible rather than considering all available information. This can lead to overlooking potential defects or risks that may not be immediately obvious.

Mental Models

Mental models are simplified representations of complex systems or processes that allow us to understand and reason about them. In testing, mental models can be helpful in identifying potential defects or risks related to the system’s architecture or design.

Mental models can be developed through experience, observation, and analysis. They can also be developed through collaboration with other team members, such as developers or business analysts.

Exploratory Testing

Exploratory testing is a testing approach that involves exploring the system’s functionality without a predefined test plan. This can be useful in identifying defects or risks that may not be obvious or easily reproducible.

Exploratory testing can be performed by individual testers or by a team of testers working together. It can also be combined with other testing approaches, such as automated testing or manual testing.

Psychological Effects

There are several psychological effects that can affect testing, such as the primacy effect, recency effect, and framing effect. These effects can influence our perception of information and our ability to make rational decisions in testing.

The primacy effect occurs when we remember information that we learned first, while the recency effect occurs when we remember information that we learned most recently. The framing effect occurs when our perception of information is influenced by the way it is presented.

Conclusion

Understanding the psychology of testing is essential for software development engineers in the test. By understanding heuristics, biases, mental models, exploratory testing, and psychological effects, developers can improve their testing processes and identify potential defects and risks more effectively. It is essential to be mindful of these factors and to use them appropriately in testing to ensure that software is of the highest quality and meets its intended requirements.

This article is a part of my weekly Newsletter The Testing Architect. Subscribe to it for Weekly Testing Insights and Articles like this. https://thetestingarchitect.substack.com/p/understanding-the-psychology-of-testing

--

--

Manish Saini

Enabling Productivity in Testing | Consultant | SDET | Python | API Testing | Continuous Testing | Performance Testing | Framework Design