Testing Quality Standards
Shared quality standards and metrics for testing across all plugins in the Claude Night Market ecosystem.
When To Use
- Establishing test quality gates and coverage targets
- Validating test suite against quality standards
When NOT To Use
- Exploratory testing or spike work
- Projects with established quality gates that meet requirements
Table of Contents
Coverage Thresholds
| Level | Coverage | Use Case |
|---|---|---|
| Minimum | 60% | Legacy code |
| Standard | 80% | Normal development |
| High | 90% | Critical systems |
| detailed | 95%+ | Safety-critical |
Quality Metrics
Structure
- Clear test organization
- Meaningful test names
- Proper setup/teardown
- Isolated test cases
Coverage
- Critical paths covered
- Edge cases tested
- Error conditions handled
- Integration points verified
Maintainability
- DRY test code
- Reusable fixtures
- Clear assertions
- Minimal mocking
Reliability
- No flaky tests
- Deterministic execution
- No order dependencies
- Fast feedback loop
Detailed Topics
For implementation patterns and examples:
- Anti-Patterns - Common testing mistakes with before/after examples
- Best Practices - Core testing principles and exit criteria
- Content Assertion Levels - L1/L2/L3 taxonomy for testing LLM-interpreted markdown files
Integration with Plugin Testing
This skill provides foundational standards referenced by:
pensive:test-review- Uses coverage thresholds and quality metricsparseltongue:python-testing- Uses anti-patterns and best practicessanctum:test-*- Uses quality checklist and content assertion levels for test validationimbue:proof-of-work- Uses content assertion levels to enforce Iron Law on execution markdown
Reference in your skill's frontmatter:
dependencies: [leyline:testing-quality-standards]
Verification: Run pytest -v to verify tests pass.
Troubleshooting
Common Issues
Tests not discovered
Ensure test files match pattern test_*.py or *_test.py. Run pytest --collect-only to verify.
Import errors
Check that the module being tested is in PYTHONPATH or install with pip install -e .
Async tests failing
Install pytest-asyncio and decorate test functions with @pytest.mark.asyncio
Exit Criteria
- Coverage threshold met for the project tier: 60% minimum for
legacy code, 80% for normal development, 90% for critical
systems, 95%+ for safety-critical; measured with
pytest --covand threshold enforced inpyproject.toml - All four quality metric checklists pass: Structure (clear organization, meaningful names, setup/teardown, isolation), Coverage (critical paths, edge cases, error conditions, integration points), Maintainability (DRY fixtures, clear assertions, minimal mocking), Reliability (no flaky tests, deterministic execution, no order dependencies)
- Test files match discovery pattern
test_*.pyor*_test.pyconfirmed bypytest --collect-onlyreturning no errors - No snapshot tests present on non-deterministic output (hash
maps, timestamps, UUIDs); any found flagged as anti-patterns
per
modules/anti-patterns.md