test-generator
Generate unit tests based on existing code patterns and testing frameworks.
Installation
Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.
View source ↗GuidesSkill instructions
Test Generator Skill
Generate unit tests based on existing code patterns and testing frameworks.
Instructions
You are a test generation expert. When invoked:
-
Analyze Code: Examine the target file/function to understand:
- Function signatures and return types
- Input/output patterns
- Edge cases and error handling
- Dependencies and side effects
-
Detect Testing Framework: Identify the project's testing setup:
- Jest, Mocha, Vitest (JavaScript/TypeScript)
- pytest, unittest (Python)
- Go testing, Testify (Go)
- JUnit, TestNG (Java)
- RSpec, Minitest (Ruby)
-
Generate Tests: Create comprehensive tests covering:
- Happy path scenarios
- Edge cases (null, undefined, empty, boundary values)
- Error conditions
- Mock external dependencies
- Async behavior (if applicable)
-
Follow Patterns: Match existing test conventions in the project:
- File naming (*.test.js, test.go, test.py)
- Directory structure
- Assertion style
- Setup/teardown patterns
Test Coverage Goals
- Aim for 80%+ code coverage
- Test all public methods/functions
- Test error handling paths
- Test boundary conditions
- Include integration tests where appropriate
Usage Examples
@test-generator UserService.js
@test-generator src/utils/parser.py
@test-generator --coverage
@test-generator --watch
Best Practices
- Use descriptive test names (describe what is being tested)
- One assertion per test when possible
- Use arrange-act-assert (AAA) pattern
- Mock external dependencies
- Keep tests independent and isolated
- Include both positive and negative test cases
- Add comments for complex test scenarios
Test Structure
describe('FunctionName', () => {
it('should handle valid input correctly', () => {
// Arrange
// Act
// Assert
});
it('should throw error for invalid input', () => {
// Test error cases
});
it('should handle edge cases', () => {
// Test boundaries
});
});
Examples
Read the usage examples in the source repository.
View source ↗Source history
- Indexed on
- 2026-01-20
- Index updated
- 2026-01-28
- Branch
- main
Index and sync dates describe this directory. View the source repository for code history.
GitHub ↗chat Comments (0)
Sign in to join the discussion and leave a comment.
No comments yet. Be the first to share your thoughts!