Skip to content
Tech

Why do my AI-generated tests pass on the bugs they were meant to catch?

83

Opportunity

AI coding assistants generate unit tests by reading the implementation, so assertions reflect what the code currently does rather than what it should do. A test written against a buggy function learns the bug as a fixture, not a violation. Developers shipping with 90% AI-generated coverage see mutation scores stay flat and real regressions slip through unchanged. The core issue is the oracle problem: there is no ground truth for correct behavior unless you supply it, and AI assistants have no access to the requirements or intent behind the code. Research from July 2025 confirms that LLM-generated tests frequently pass on the exact buggy code they were written against, failing only when the bug is fixed.

Why it matters

A test suite that passes on broken code is worse than no test suite, because it turns the primary quality signal into a false guarantee.

How I score the opportunity

The Opportunity Score is my own read, not a measurement: how much it hurts, how often it bites, and how little exists to solve it today. Higher means I think it is more worth building.

Severity8/10

How much pain it causes when it shows up.

Frequency9/10

How often people actually run into it.

Whitespace8/10

How little good tooling exists for it today.

More problems worth solving