Agent skill

testing-gate

Gate 6 - Verify tests exist and cover critical paths. Issues result in WARNINGS (encourages tests, doesn't block).

Stars 232
Forks 15

Install this agent skill to your Project

npx add-skill https://github.com/aiskillstore/marketplace/tree/main/skills/danielpodolsky/testing-gate

SKILL.md

Gate 6: Testing Verification

"Tests are proof of understanding. If you can't test it, do you really understand it?"

Purpose

This gate encourages juniors to write tests for their features. Unlike the Ownership Gate, this does NOT block completion - it issues warnings to encourage the testing habit.

Gate Status

  • PASS — Tests exist and cover critical paths
  • WARNING — No tests or insufficient coverage (can proceed with note)

Note: This gate does NOT block. The goal is to build the testing habit through encouragement, not enforcement.


Gate Questions

Ask in sequence:

Question 1: Test Existence

"What tests did you write for this feature?"

Looking for:

  • At least one test file exists
  • Tests are actually running (not skipped)
  • Tests are meaningful (not just expect(true).toBe(true))

If no tests:

"I noticed there aren't tests for this feature. Testing isn't required to complete, but it's a habit worth building. What would you test if you had time?"

Question 2: Coverage Strategy

"What does your test prove about this feature?"

Looking for:

  • Happy path covered
  • At least one edge case considered
  • Error states (if applicable)

Follow-up:

"If I broke [specific part], which test would catch it?"

Question 3: Test Quality

"Show me your most important test. What behavior does it verify?"

Looking for:

  • Testing behavior, not implementation
  • Clear test names
  • AAA pattern (Arrange, Act, Assert)

Response Templates

If PASS (Tests Exist)

✅ TESTING GATE: PASSED

Nice work including tests! I see you covered:
- [Specific test they wrote]
- [Edge case they handled]

Key strength: [Something they did well]

Consider adding: [One suggestion for future]

Moving to code review...

If WARNING (No Tests)

⚠️ TESTING GATE: WARNING

No tests found for this feature. That's okay - we can proceed.

But here's why tests matter:
1. **Interview Gold**: "I implemented tests for critical flows..."
2. **Confidence**: Know your changes don't break things
3. **Documentation**: Tests show how code should be used

Quick win for next time:
- Test the happy path first
- Add one edge case
- That's already better than most!

Proceeding to code review...

If WARNING (Weak Tests)

⚠️ TESTING GATE: WARNING

Tests exist but could be stronger:

**Issue**: [What's missing or weak]
**Question**: "If [scenario], would your tests catch it?"

This doesn't block you, but consider:
- [Specific improvement suggestion]

Proceeding to code review...

What Makes a Good Test Suite?

Level Coverage Characteristics
Minimal 1-2 tests Happy path only
Good 3-5 tests Happy path + main edge cases
Strong 5-10 tests Happy path + edge cases + error states
Interview-Ready Full pyramid Unit + Integration + E2E for critical flows

Socratic Guidance

If they want to add tests but don't know where to start:

  1. "What's the ONE thing that would be really bad if it broke?"
  2. "What input would a user never send but a hacker might?"
  3. "What happens when the server is slow or returns an error?"

Stack-Specific Hints

Stack Suggestion
Vite + React "Vitest + React Testing Library is fast and integrated"
Next.js "Vitest or Jest works great with Next"
API/Backend "Test your endpoints with supertest or native HTTP"
Python "pytest is the standard - simple and powerful"

Interview Connection

"Testing is interview gold."

When they pass this gate with tests:

  • Note it for their STAR story
  • "You can talk about your testing strategy in interviews"
  • "What percentage coverage did you achieve?" (for resume)

When they skip tests:

  • "Next time, even 2-3 tests makes a huge difference for your portfolio"
  • "Employers love seeing test files in your repo"

Why WARNING Not BLOCKING?

  1. Encouragement > Enforcement: Build the habit through positive reinforcement
  2. Some features are trivial: Not everything needs tests
  3. Time constraints exist: Production pressure is real
  4. Learning curve: Testing has a learning curve; don't block progress

The goal is to make testing feel valuable, not punitive.

Expand your agent's capabilities with these related and highly-rated skills.

aiskillstore/marketplace

perigon-backend

Perigon ASP.NET Core + EF Core + Aspire conventions

232 15
Explore
aiskillstore/marketplace

perigon-agent

Pointers for Copilot/agents to apply Perigon conventions

232 15
Explore
aiskillstore/marketplace

perigon-angular

Angular 21+ standalone/Material/signal conventions for Perigon WebApp

232 15
Explore
aiskillstore/marketplace

fastapi-mastery

Comprehensive FastAPI development skill covering REST API creation, routing, request/response handling, validation, authentication, database integration, middleware, and deployment. Use when working with FastAPI projects, building APIs, implementing CRUD operations, setting up authentication/authorization, integrating databases (SQL/NoSQL), adding middleware, handling WebSockets, or deploying FastAPI applications. Triggered by requests involving .py files with FastAPI code, API endpoint creation, Pydantic models, or FastAPI-specific features.

232 15
Explore
aiskillstore/marketplace

context7-efficient

Token-efficient library documentation fetcher using Context7 MCP with 86.8% token savings through intelligent shell pipeline filtering. Fetches code examples, API references, and best practices for JavaScript, Python, Go, Rust, and other libraries. Use when users ask about library documentation, need code examples, want API usage patterns, are learning a new framework, need syntax reference, or troubleshooting with library-specific information. Triggers include questions like "Show me React hooks", "How do I use Prisma", "What's the Next.js routing syntax", or any request for library/framework documentation.

232 15
Explore
aiskillstore/marketplace

browser-use

Browser automation using Playwright MCP. Navigate websites, fill forms, click elements, take screenshots, and extract data. Use when tasks require web browsing, form submission, web scraping, UI testing, or any browser interaction.

232 15
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results