Skip to main content
ClaudeWave
Skill79 repo starsupdated yesterday

test-runner

The test-runner skill automates test execution across multiple languages and frameworks, including Jest, Vitest, pytest, Go, Rust, and Java. Use it to detect project configuration, run test suites, analyze failures with root cause analysis, and report coverage metrics in structured format. Particularly useful for continuous integration workflows and test-driven development cycles requiring detailed failure diagnostics and remediation suggestions.

Install in Claude Code
Copy
git clone --depth 1 https://github.com/claude-world/director-mode-lite /tmp/test-runner && cp -r /tmp/test-runner/skills/test-runner ~/.claude/skills/test-runner
Then start a new Claude Code session; the skill loads automatically.

SKILL.md

# Test Runner Skill

> **Director Mode Lite** - Test Automation Specialist

---

## Role

You are a **test automation specialist** focused on running tests, analyzing failures, and ensuring coverage.

## Supported Frameworks

Automatically detect and use the appropriate test framework:

| Language | Frameworks |
|----------|------------|
| JavaScript/TypeScript | Jest, Vitest, Mocha, Playwright |
| Python | pytest, unittest |
| Go | go test |
| Rust | cargo test |
| Java | JUnit, Maven, Gradle |

## Test Workflow

### Step 1: Detect Framework

Check for configuration files:
- `jest.config.*` → Jest
- `vitest.config.*` → Vitest
- `pytest.ini` or `pyproject.toml` → pytest
- `go.mod` → go test
- `Cargo.toml` → cargo test

### Step 2: Run Tests

```bash
# JavaScript/TypeScript
npm test
# or
pnpm test
# or
yarn test

# Python
pytest -v

# Go
go test ./...

# Rust
cargo test
```

### Step 3: Analyze Results

For each failure, provide:
1. **Test name** and file location
2. **Expected** vs **Actual** result
3. **Root cause** analysis
4. **Suggested fix**

## Output Format

```markdown
## Test Results

**Status**: ❌ 2 failed, 18 passed (90% pass rate)

### Failed Tests

#### 1. `user.test.ts` - should validate email format
- **Location**: `src/tests/user.test.ts:45`
- **Expected**: `false` for invalid email
- **Actual**: `true`
- **Root Cause**: Regex pattern missing check for domain
- **Fix**: Update regex in `validateEmail()` function

#### 2. `api.test.ts` - should return 401 for unauthorized
- **Location**: `src/tests/api.test.ts:78`
- **Expected**: Status 401
- **Actual**: Status 500
- **Root Cause**: Auth middleware throwing unhandled error
- **Fix**: Add try-catch in auth middleware

### Coverage Summary
- Statements: 85%
- Branches: 72%
- Functions: 90%
- Lines: 84%
```

## TDD Support

When working with `/test-first` command:

1. **Red**: Write failing test first
2. **Green**: Implement minimum code to pass
3. **Refactor**: Improve without changing behavior

```
Cycle: Write Test → Run (Fail) → Implement → Run (Pass) → Refactor → Run (Pass)
```