Install
npx skillscat add eltmon/overdeck/pan-test-config Install via the SkillsCat registry.
SKILL.md
Pan Test Config
Configure test suites for your project in Overdeck.
Trigger Patterns
- "configure tests"
- "setup test runner"
- "add test suite"
- "run all tests"
What This Skill Does
Guides you through configuring test suites in ~/.overdeck/projects.yaml:
- Backend Tests - Maven, pytest, Cargo, etc.
- Frontend Unit Tests - Vitest, Jest
- E2E Tests - Playwright, Cypress
- Container Support - Run tests inside Docker containers
Configuration Schema
projects:
myproject:
name: "My Project"
path: /home/user/projects/myproject
issue_prefix: PRJ
tests:
backend:
type: maven # Test framework type
path: api # Path relative to workspace
command: ./mvnw test # Command to run
container: false # Run inside container?
frontend_unit:
type: vitest
path: fe
command: pnpm test:unit --run
container: true
container_name: "{{COMPOSE_PROJECT}}-fe-1"
frontend_e2e:
type: playwright
path: fe
command: pnpm test:e2e
env:
BASE_URL: "https://{{FEATURE_FOLDER}}.{{DOMAIN}}"
USE_LOCALIAS: "true"Supported Test Types
| Type | Framework | Output Parsing |
|---|---|---|
maven |
Maven/JUnit | Tests run: X, Failures: Y |
vitest |
Vitest | X passed, Y failed |
jest |
Jest | X passed, Y failed |
playwright |
Playwright | X passed, Y failed |
pytest |
pytest | X passed, Y failed |
cargo |
Rust/Cargo | test result: ok. X passed |
Running Tests
# Run all tests for a workspace
pan test run min-123
# Run all tests for main branch
pan test run main
# Run specific tests only
pan test run min-123 --tests backend,frontend_unit
# List configured tests
pan test list
# List tests for specific project
pan test list myprojectExample Configurations
Java Backend + React Frontend
tests:
backend:
type: maven
path: api
command: ./mvnw test -Pfast-test
frontend_unit:
type: vitest
path: fe
command: pnpm test:unit --run
frontend_e2e:
type: playwright
path: fe
command: pnpm test:e2e
env:
BASE_URL: "https://{{FEATURE_FOLDER}}.myapp.test"Python Backend + Vue Frontend
tests:
backend:
type: pytest
path: api
command: pytest -v
frontend:
type: vitest
path: frontend
command: npm run test
e2e:
type: playwright
path: e2e
command: npx playwright testRust Project
tests:
unit:
type: cargo
path: .
command: cargo test
integration:
type: cargo
path: .
command: cargo test --test integrationRunning Tests in Docker Containers
For feature workspaces with devcontainers, tests can run inside the container:
tests:
frontend_unit:
type: vitest
path: fe
command: pnpm test:unit --run
container: true
container_name: "{{COMPOSE_PROJECT}}-fe-1"The container_name uses placeholders:
{{COMPOSE_PROJECT}}- e.g.,myapp-feature-min-123- So container becomes:
myapp-feature-min-123-fe-1
Test Reports
Reports are saved to {project}/reports/:
reports/
├── test-run-main-20260124-093000.md
├── test-run-feature-min-123-20260124-100000.md
├── backend-main-20260124-093000.log
├── frontend_unit-main-20260124-093000.log
└── frontend_e2e-main-20260124-093000.logReport Format
# Test Run Report - feature-min-123
**Date:** 2026-01-24T10:00:00Z
**Target:** feature-min-123
**Base URL:** https://feature-min-123.myapp.test
## Summary
| Suite | Status | Passed | Failed | Duration |
|-------|--------|--------|--------|----------|
| backend | ✅ PASS | 142 | 0 | 45s |
| frontend_unit | ✅ PASS | 89 | 0 | 12s |
| frontend_e2e | ✅ PASS | 23 | 0 | 2m 15s |
**Overall: ✅ ALL PASSED** (0 failures)Desktop Notifications
When tests complete, a desktop notification is sent:
- Windows/WSL2: PowerShell toast notifications
- macOS: osascript notifications
- Linux: notify-send
Disable with --no-notify:
pan test run min-123 --no-notifyRelated Skills
/pan-workspace-config- Workspace configuration/test-all- Project-specific test runner skill