Published: July 14, 2017
Updated: August 16, 2025
Do you ever wonder how many bugs your team missed even though they seem obvious in hindsight? That gap is often the work of cognitive bias. Biases shape where we look, how we set up tests, and how we interpret what we see. In a recent conversation with test architect Gerie Owen, hosted by XBOSoft CEO Philip Lew, we explored why smart teams still miss clear defects and what to do about it. The goal here is practical. understand the thinking patterns at play and build habits that help you see what matters.
Software testing is judgment under uncertainty. We compare behavior to requirements, weigh usability and risk, and decide when software is ready. As Gerie put it, a missed bug is an error in judgment. That judgment is influenced by two modes of thinking described by researchers. quick, intuitive pattern matching on one side, and slower, deliberate analysis on the other. In day-to-day testing both are active, and they sometimes conflict. When that tension goes unexamined, bias slips in.
A famous attention experiment asks people to count passes in a basketball drill while a person in a gorilla suit walks through the scene. Many viewers never notice the gorilla because their focus is elsewhere. Gerie uses this as a metaphor for testing. when our attention narrows to a planned checklist, obvious defects can pass in plain sight. She recalls a regression cycle where a required warning light on a smart-home device stopped blinking and no one noticed at first, because the team’s attention was fixed on other fixes. It is a reminder to vary what we look at and to invite fresh eyes.
We assume the current situation matches the last one. A document printed correctly once, so printing felt “covered.” Only later did the team try printing a second time and discover it failed on repeat. Small samples make for fragile conclusions.
Deep domain familiarity makes it hard to see a flow like a first-time user. In one annuity enrollment, the “date of death” rule appeared seven screens into the process. Agents would collect data for several minutes before learning the transaction was ineligible. After discussion the check moved to the front of the flow. The team had been too familiar with the system to feel that pain.
We design tests that prove what we expect instead of challenging it. Positive paths get attention, while negative and boundary cases wait. Simple examples include allowing alphabetic characters in a numeric zip code, accepting zero where it should be rejected, or skipping upper and lower boundary conditions.
An early smoke test goes smoothly, or a trusted developer’s code usually lands clean, and effort drifts away from those areas. Assumptions harden. Quality suffers where our expectations are strongest.
Fatigue and multitasking drain attention. Tight schedules compress exploratory time. Metrics that reward volume over insight push people to run more cases instead of asking better questions. Root-cause exercises that feel like blame discourage reporting what seems odd. All of this narrows what testers are willing and able to see.
Plan short, time-boxed charters alongside scripted tests. Give each session a clear intent, for example “repeat actions that should be idempotent,” “try likely user detours,” or “stress the back button and partial form completion.” Capture notes or session recordings so interesting paths become reproducible defects or new regression cases.
Pair testing brings two perspectives to the same flow, which often breaks through individual anchors. Rotating a new tester through a mature area refreshes the team’s sense of what is confusing or fragile.
Define simple oracles that help judgment in the moment. what a persona would expect, how similar products behave, or published UI and accessibility guidelines. When frustration or surprise shows up, treat it as a signal to pause and investigate.
When defects escape, review them to learn how attention was allocated, what assumptions were in play, and which checks or environments were missing. Keep the focus on system signals and trade-offs, not on tallying misses by individual.
Gerie argues that many organizations already run heavy on structured, case-driven work. She advocates giving intuition room through exploratory testing so more issues surface earlier. Philip notes that some teams lean the other way and need stronger structure. The takeaway is practical. tune the mix for your context. If you never time-box exploratory sessions, add them. If everything is ad hoc, anchor with agreed acceptance criteria and a lightweight regression core.
For every core path, include a small set of challenges. repeat the same action twice, interrupt a flow and resume it, submit near the edges of allowed values, and try a realistic but wrong sequence a user might attempt. These checks find brittle areas your planned scripts rarely touch.
Include people with different backgrounds in reviews. A developer, a tester new to the domain, a support analyst who knows common user mistakes, and a product owner will notice different risks. Diversity of experience is an antidote to groupthink.
When you find something odd, capture the exact steps, inputs, environment, and timing. Short screen recordings and saved logs reduce the friction of reproducing issues and lower the chance that a real defect is waved away.
Where did we rely on assumption rather than evidence this iteration, and how can we test that assumption next? Which areas did we not explore because the plan did not call for it? What escaped and why did our attention miss it? Do our reviews encourage people to surface ambiguous behavior early?
In our work with teams across industries, the pattern is consistent. bias narrows attention unless you build routines that widen it. We help clients add compact exploratory charters to every sprint, tune the mix of structured and unstructured testing to their risk profile, and run post-release learning sessions that focus on signals rather than blame. The result is practical. more meaningful defects found earlier, fewer surprises in the field, and a test culture that stays curious without losing discipline.
Explore More on Software Quality
Explore how self-awareness can improve test accuracy.
Visit the Defining, Measuring, and Implementing Software Quality page
Upgrade Testing Through Better Awareness
We’ll help your team recognize and mitigate bias in testing.
Contact Us
Download the “How to Improve Software Quality?” White Paper
Practical techniques to identify and reduce testing bias.
Get the White Paper
Looking for more insights on Agile, DevOps, and quality practices? Explore our latest articles for practical tips, proven strategies, and real-world lessons from QA teams around the world.