Test Quality Gaps
Detects low-quality test patterns: silenced tests ([Ignore]/[Skip]), uninformative method names, and test methods missing any assertions.
Why this rule exists
A test with no assertions is theater: it runs, it passes, it proves nothing. A silenced test that never gets unsilenced is dead code that signals false coverage.
Code example
+ [Fact] public void Test1() { var x = svc.DoThing(); }+ [Fact] public void DoThing_WithValidInput_ReturnsExpectedResult()
+ {
+ var result = svc.DoThing("input");
+ Assert.Equal("expected", result);
+ }Configuration
Disable or adjust the severity of this rule in .gauntletci.json:
{
"rules": {
"GCI0041": { "enabled": true, "severity": "Warn" }
}
}See Configuration for the full schema.
Related rules
Uncaught Exception Path
Fires when throw new is added without a corresponding Assert.Throws or Should().Throw assertion in the test suite.
TODO and Stub Detection
Fires when added lines in non-test files contain TODO, FIXME, HACK markers, or throw new NotImplementedException, indicating unfinished work.
Discussed in
The Asymmetry of Change: Why Your Tests Are Looking the Wrong Way
Why passing tests don't guarantee correct behavior. How diff-scanning can close the gap between code changes and test validation.
Why Tests Miss Bugs
Tests pass but bugs still reach production. The categories of risk that escape test suites and why a green build is not the same as safe code.
Beyond SonarQube: A Behavioral Alternative to Code Smell Detection
Why linter rules and code smells miss behavioral regressions. A case for deterministic behavioral analysis as a gating criterion instead of counting violations.
Best AI Code Review Tools for Pull Requests
How to evaluate AI code review tools by evidence quality, repeatability, CI fit, noise control, and merge-gate safety.
CI Quality Gate for Pull Requests
A practical framework for designing CI quality gates that block risky pull requests instead of only enforcing style, coverage, and known vulnerabilities.
Best Code Review Tools for GitHub
A GitHub-focused guide to choosing code review tools across human review, AI assistants, security scanners, static analysis, and PR risk gates.
CodeRabbit Alternative: Deterministic Pull Request Risk Analysis
A buyer-focused comparison for teams evaluating AI pull request reviewers and deterministic PR risk analysis before merge.
Implemented in src/GauntletCI.Core/Rules/Implementations/GCI0041_*.cs.
Eric Cogen -- Founder, GauntletCI
Twenty years as a senior technical consultant building and modernizing enterprise platforms across .NET, AWS, serverless, microservices, and AI-driven systems.
