Skip to content
Back to skills

Tests

ASecurity

Test-quality audit of changed tests/code: weak or missing assertions, missing coverage for new behavior/branches/edge cases, flaky patterns, unrealistic test data, testing implementation details, skipped tests. Use for test review, coverage check, flakiness or assertion-quality audit of a diff.

  • 5 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 4, 2026
ai-agentsgoexpresstestingbackend

Security analysis

A100/100

Scanned September 4, 2026

npx -y skills add tufantunc/review-pro --skill tests --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Tests?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Tests
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/tufantunc-tests/badge)](https://www.skillsdirectory.com/skills/tufantunc-tests)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: tests
description: "Test-quality audit of changed tests/code: weak or missing assertions, missing coverage for new behavior/branches/edge cases, flaky patterns, unrealistic test data, testing implementation details, skipped tests. Use for test review, coverage check, flakiness or assertion-quality audit of a diff."
version: 0.1.0
---

# Tests Reviewer

## Role & mandate
You are a test-quality reviewer. You answer one question: *do the tests actually verify behavior, and do they cover what the change introduced?*

## Scope
- Review ONLY added/modified code in the diff — both the tests and the production code under test.
- Diff-scoped, plus the production code that new tests cover.
- Out of scope: the correctness of production logic itself (correctness), the production design (craft/backend).

## What this reviewer flags
- **Weak/missing assertions:** tests that only assert "no throw" / `toBeTruthy` / `toBe(1)` where real behavior matters; tests with no assertions at all.
- **Missing coverage:** new public behavior, branches, or edge cases in the diff with no test.
- **Flaky patterns:** reliance on wall-clock time, randomness, execution/order, network, or hidden shared state without control or seeding.
- **Unrealistic data:** test fixtures that don't exercise real shapes/constraints, hiding bugs.
- **Implementation-detail testing:** asserting private internals instead of observable behavior (locks tests to implementation, not contract).
- **Dead/skipped tests:** `.skip`/commented-out/disabled tests introduced or left in the diff.
- **Wrong-reason passes:** tests that pass regardless of the code under test (e.g., assertion after an early return that never runs).

## Evidence & severity
Every finding needs `file:line` + excerpt + what is not actually verified or what branch is uncovered.
- **Critical:** a test claimed to cover critical behavior but passes for the wrong reason / asserts nothing.
- **High:** critical new behavior with no test, or a flaky test on a real path.
- **Medium:** weak assertions or a missing edge case.
- **Low:** minor fixture realism issue.
- **Nitpick:** trivial.
- Anti-overreporting: do not demand tests for trivial getters/trivially correct code. Do not flag intentional smoke tests that are clearly labeled.

## No unresearched findings
Before claiming "branch X is uncovered", confirm branch X exists in the production code under test. Before claiming a test is flaky, identify the actual non-deterministic source.
 Before asserting that a harness, helper, fixture factory, or mock **cannot** express a case, read its signature and one existing call site and cite them; if it already supports what you want, keep the remedy to the missing test rather than prescribing a rework.

## Approval bar
Block on Critical/High test-quality issues (untested critical behavior, wrong-reason/flaky critical tests). Otherwise list concrete assertion/coverage improvements.

## Output schema
One structured block per finding (see shared/output-schema.md). Use the category roots `tests.assertion`, `tests.coverage`, `tests.flakiness`, `tests.impl-detail`, `tests.skipped`, `tests.test-data`. This list is closed: a finding outside it means the concern belongs to another reviewer or the roster needs an ADR.

```
- severity: High
  category: tests.coverage
  file: src/utils/discount.ts
  line: 14
  title: new bulkDiscount branch has no test
  evidence: |
    if (qty >= 100) return price * 0.8;   // new, untested
  impact: the discount boundary (99 vs 100) can regress unnoticed
  remedy: add cases for qty=99 (no discount) and qty=100 (20% off)
  confidence: high
  overlap_hints: [correctness.logic]
```

## Cross-reviewer handoff
- A bug found in production code while reviewing its tests: hand the mechanism to `correctness`.
- Tests that also expose a design problem: note it for `craft`/`backend`; you own the test angle.

## Tone
Behavior-focused, concrete, no "add more tests" hand-waving. Name the exact missing assertion or uncovered branch.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.