Hardware FixRecommendedDevice not working? Your driver may be the problemCheck updates for common hardware issues.Fix DriversOctober DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsClean PCRecommendedOne scan can reveal what keeps slowing WindowsLook for cleanup and repair opportunities.Run Scan×
Skip to content
World desk4 min

How a “Redundant” Test Can Still Catch a Future Bug

A test that adds no new coverage may still detect a failure. Learn what minimization measures, where it can miss risk, and how mutation testing helps.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

A test can look redundant because it adds no new statement or branch coverage, yet still catch a failure another test misses. The key is what “redundant” means: a suite minimized against one chosen criterion may lose detection power that the criterion never measured. The title’s “ninth bug” is not tied to a verified project or incident, so it should be read as a reminder of that risk—not as a documented case.

What makes a test look redundant?

Test-suite minimization removes tests considered unnecessary under a chosen adequacy criterion, often to reduce the effort of running the suite. The criterion might be statement coverage, branch coverage, requirements, or another measure. A test that contributes nothing new to that measure can be marked redundant even if it exercises a different input, state, boundary, or interaction.

As an Amazon Associate I earn from qualifying purchases.

That distinction matters because a metric is a model of test value, not a complete inventory of every failure a suite might detect. Two tests can cover the same code and still differ in the data they use, the state they reach, or the behavior they assert.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Why removal can reduce fault detection

Regression testing checks whether a software change has caused failures in parts that were not meant to change. It is distinct from retesting, which checks whether a particular correction fixed its targeted fault. ISO/IEC/IEEE 29119-1:2022 defines regression testing as “testing performed following modifications to a test item or to its operational environment, to identify whether failures in unmodified parts of the test item occur.” ISO/IEC/IEEE 29119-1:2022

A test suite can preserve its measured coverage after reduction while becoming less effective at detecting failures. In a 2018 study of 1,478 failed builds from 32 GitHub projects, evaluated reductions lost as much as 52.2% of failed-build detection under the study’s mappings. That was the maximum observed in those study conditions, not a rate that applies to all projects; the authors also found that traditional reduction metrics did not predict detection loss well. ACM SIGSOFT ISSTA 2018 study

The practical lesson is not to keep every test forever. It is to check whether the reason for removing a test captures the kinds of failures the team actually needs to catch.

Minimization, selection, and prioritization are different

These approaches can all reduce or manage test effort, but they answer different questions. Yoo and Harman’s survey treats them as distinct regression-testing strategies. Yoo and Harman’s survey

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Approach Question it answers Primary aim
Minimization Which tests can be removed while preserving a chosen adequacy criterion? Make the suite smaller under that criterion.
Selection Which tests are relevant to this particular change? Run tests connected to the changed code or behavior.
Prioritization In what order should tests run? Surface failures earlier without necessarily removing tests.

A reduced suite, a change-focused selection, and a reordered full suite are not interchangeable. Decide which problem you are solving before choosing a technique.

How mutation testing can expose weak tests

Mutation testing makes small artificial changes to a program—such as changing a condition or operator—and checks whether the tests detect them. A detected mutant is “killed”; a mutant that passes may point to a missing case or an assertion too weak to notice the changed behavior.

A 2021 Google Research study analyzed 15 million mutants and reported evidence that developers using mutation testing wrote more tests, and that mutants were coupled with real faults. This supports mutation testing as a way to find potential gaps; it does not prove that a particular future bug will be caught. Google Research publication record

Investigate survivors rather than chasing a score

A surviving mutant is a prompt to investigate, not automatic proof that a test is defective. It may represent behavior that cannot occur, a change equivalent to the original in the relevant context, or a low-value case. Microsoft’s .NET guidance recommends examining survivors for missing cases or weak assertions, while focusing effort on risky, business-critical behavior instead of treating a 100% mutation score as a universal target. Microsoft Learn’s .NET mutation-testing guidance

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Mutation reports also need triage. Google has described reducing the number of redundant or unhelpful mutants presented to developers so that review effort stays manageable. Google Testing Blog’s mutation-testing account

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

A practical way to decide whether to remove a test

  1. Name the criterion. Record exactly why the test appears removable: duplicate input, shared requirement, unchanged statement or branch coverage, equivalent mutation results, or repeated behavior.
  2. Check what that criterion omits. Compare the test’s states, boundary values, interactions, and assertions with those of the tests that would remain.
  3. Look at project history. Where possible, replay real past failures against the proposed reduced suite. Measure detection on that history rather than relying only on a proxy coverage score; the ISSTA study found that common reduction metrics did not reliably predict its failed-build detection-loss measure. ACM SIGSOFT ISSTA 2018 study
  4. Use mutation results as leads. Review surviving mutants in high-risk behavior and decide whether a focused test or stronger assertion would detect a meaningful change.
  5. Include operating costs in the decision. Consider execution time saved alongside failure detection, relevance to expected changes, test stability, diagnostic clarity, and ongoing maintenance and review effort.

Keep a test when it protects a meaningful behavior the remaining suite does not adequately exercise. Remove or repair it when it is genuinely duplicative, unstable, or costly without useful detection. “Redundant” is a conclusion relative to a criterion—not proof that the test can never matter.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Crashes, No Sound, or Screen Glitches?Free driver scan
Windows Errors? Fix Them Before They SpreadFree repair scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.