Skillquality 0.47
testing-best-practices
Unit testing, integration testing, and test-driven development principles. Use when writing tests, reviewing test code, improving test coverage, or setting up testing strategy. Triggers on "write tests", "review tests", "testing best practices", or "TDD".
Price
free
Protocol
skill
Verified
no
What it does
Testing Best Practices
Unit testing, integration testing, and TDD principles for reliable, maintainable test suites. Contains 34 rules across 7 categories using TypeScript with Jest/Vitest.
Metadata
- Version: 2.0.0
- Rule Count: 34 rules across 7 categories
- License: MIT
When to Apply
Reference these guidelines when:
- Writing unit or integration tests
- Reviewing test code quality
- Improving test coverage strategy
- Setting up testing infrastructure
- Debugging flaky or slow tests
Rule Categories by Priority
| Priority | Category | Impact | Prefix |
|---|---|---|---|
| 1 | Test Structure | CRITICAL | struct- |
| 2 | Test Isolation | CRITICAL | iso- |
| 3 | Assertions | HIGH | assert- |
| 4 | Test Data | HIGH | data- |
| 5 | Mocking | MEDIUM | mock- |
| 6 | Coverage | MEDIUM | cov- |
| 7 | Performance | LOW | perf- |
Quick Reference
1. Test Structure (CRITICAL)
struct-aaa-pattern- Arrange, Act, Assert patternstruct-descriptive-names- Descriptive test namesstruct-one-assertion- One logical assertion per teststruct-describe-it- Organized test suites with describe/itstruct-given-when-then- BDD style when appropriatestruct-setup-teardown- Proper setup and teardown
2. Test Isolation (CRITICAL)
iso-independent-tests- Tests run independentlyiso-no-shared-state- No shared mutable stateiso-deterministic- Same result every runiso-no-order-dependency- Run in any orderiso-cleanup- Clean up after testsiso-test-doubles- Strategic use of test doubles
3. Assertions (HIGH)
assert-specific- Use specific assertionsassert-meaningful-messages- Helpful failure messagesassert-expected-actual- Expected value firstassert-no-magic-numbers- Use named constantsassert-custom-matchers- Custom matchers for domain logic
4. Test Data (HIGH)
data-factories- Use factories for test datadata-builders- Builder pattern for complex objectsdata-faker- Generate realistic fake datadata-minimal- Minimal test datadata-realistic- Realistic edge casesdata-fixtures- Manage test fixtures
5. Mocking (MEDIUM)
mock-boundaries- Mock only at boundariesmock-verify-interactions- Verify important mock callsmock-minimal- Don't over-mockmock-realistic- Realistic mock behavior with MSW
6. Coverage (MEDIUM)
cov-meaningful- Focus on meaningful coveragecov-edge-cases- Cover edge cases and boundary valuescov-unhappy-paths- Test error scenarioscov-not-100-percent- 100% coverage isn't the goal
7. Performance (LOW)
perf-fast-unit- Keep unit tests fast (<50ms each)perf-parallel- Run tests in parallelperf-test-organization- Organize tests for fast feedback
Essential Guidelines
AAA Pattern (Arrange, Act, Assert)
it('calculates total with discount', () => {
// Arrange
const cart = new ShoppingCart();
cart.addItem({ name: 'Book', price: 20 });
cart.applyDiscount(0.1);
// Act
const total = cart.getTotal();
// Assert
expect(total).toBe(18);
});
Descriptive Test Names
// ✅ Describes behavior and scenario
describe('UserService.register', () => {
it('creates user with hashed password', () => {});
it('throws ValidationError when email is invalid', () => {});
it('sends welcome email after successful registration', () => {});
});
Test Isolation
// ✅ Each test sets up its own data
beforeEach(() => {
mockRepository = { save: vi.fn(), find: vi.fn() };
service = new OrderService(mockRepository);
});
How to Use
Read individual rule files for detailed explanations:
rules/struct-aaa-pattern.md
rules/iso-independent-tests.md
rules/mock-boundaries.md
rules/cov-meaningful.md
References
Full Compiled Document
For the complete guide with all rules expanded: AGENTS.md
Capabilities
skillsource-asyrafhussinskill-testing-best-practicestopic-agent-rulestopic-agent-skillstopic-ai-agentstopic-ai-sloptopic-claude-codetopic-code-qualitytopic-code-reviewtopic-codextopic-cursortopic-laraveltopic-nodejstopic-react
Install
Installnpx skills add AsyrafHussin/agent-skills
Transportskills-sh
Protocolskill
Quality
0.47/ 1.00
deterministic score 0.47 from registry signals: · indexed on github topic:agent-skills · 39 github stars · SKILL.md body (4,169 chars)
Provenance
Indexed fromgithub
Enriched2026-05-18 18:58:25Z · deterministic:skill-github:v1 · v1
First seen2026-05-16
Last seen2026-05-18