Generates and executes Jest tests for JavaScript/TypeScript projects, supporting unit, integration, E2E testing for React, Node, Express with structured JSON results.
npx claudepluginhub fortiumpartners/ai-meshThis skill uses the workspace's default tool permissions.
Provide comprehensive Jest test execution and generation capabilities for JavaScript and TypeScript projects, supporting:
Generates Jest test code, configurations, and step-by-step guidance for unit testing, integration testing, mocking, and TDD. Activates on 'jest test generator' phrases.
Guides Jest test writing with matchers, async testing, mocking functions/modules, snapshots, configuration, CLI, and coverage for JavaScript/TypeScript projects including React/Vue.
Generates Jest unit tests for JavaScript/TypeScript modules and React components with mocking, coverage, spies, and snapshots. Use for test creation, missing coverage, or improper mocking.
Share bugs, ideas, or general feedback.
Provide comprehensive Jest test execution and generation capabilities for JavaScript and TypeScript projects, supporting:
Create a test file from a bug report or feature description:
node generate-test.js \
--source src/components/Button.js \
--output tests/components/Button.test.js \
--type unit \
--description "Button component fails to handle click events"
Run Jest tests and return structured results:
node run-test.js \
--file tests/components/Button.test.js \
--config jest.config.js
--source <path> - Source file to test (required)--output <path> - Output test file path (required)--type <unit|integration|e2e> - Test type (default: unit)--description <text> - Bug description or test purpose--framework <react|node|express> - Framework-specific patterns--file <path> - Test file to execute (required)--config <path> - Jest config file (optional)--coverage - Run with coverage report--watch - Run in watch mode (not recommended for CI)Returns JSON with generated test file information:
{
"success": true,
"testFile": "tests/components/Button.test.js",
"testCount": 3,
"template": "unit-test",
"framework": "react"
}
Returns JSON with test results:
{
"success": false,
"passed": 2,
"failed": 1,
"total": 3,
"duration": 1.234,
"failures": [
{
"test": "Button handles click events",
"error": "Expected onClick to be called",
"file": "tests/components/Button.test.js",
"line": 15
}
]
}
For testing individual functions or components in isolation:
For testing multiple components working together:
For testing complete user journeys:
import { render, fireEvent, screen } from '@testing-library/react';
import { Button } from '../components/Button';
describe('Button', () => {
it('handles click events', () => {
const onClick = jest.fn();
render(<Button onClick={onClick}>Click me</Button>);
fireEvent.click(screen.getByText('Click me'));
expect(onClick).toHaveBeenCalled();
});
});
const request = require('supertest');
const app = require('../app');
describe('GET /api/users', () => {
it('returns list of users', async () => {
const res = await request(app).get('/api/users');
expect(res.status).toBe(200);
expect(res.body).toBeInstanceOf(Array);
});
});
The deep-debugger agent uses this skill for:
Example workflow:
1. deep-debugger receives bug report
2. Invokes test-detector to identify Jest
3. Invokes jest-test/generate-test.js to create failing test
4. Invokes jest-test/run-test.js to validate test fails
5. Delegates fix to appropriate specialist agent
6. Invokes jest-test/run-test.js to verify fix
Requires Jest to be installed in the project:
npm install --save-dev jest @types/jest
For React testing:
npm install --save-dev @testing-library/react @testing-library/jest-dom
{
"success": false,
"error": "Source file not found",
"file": "src/components/Missing.js"
}
{
"success": false,
"error": "Jest configuration not found",
"config": "jest.config.js"
}