askill
frontend-testing

frontend-testingSafety 90Repository

QA skill for frontend code. Write tests, validate user requirements, and trigger rebuilds when implementation has issues. Use this skill for unit tests, integration tests, and e2e tests using Jest, Vitest, React Testing Library, Playwright, or Cypress.

0 stars
1.2k downloads
Updated 2/4/2026

Package Files

Loading files...
SKILL.md

Frontend QA (Testing)

Write tests that validate user requirements. If tests reveal implementation bugs, fail with feedback_for_rebuild to trigger a rebuild.

Session Continuity

Your session persists. You may be started fresh OR resumed with new context.

Trigger Types

TriggerMeaning
startNormal task execution (first time)
resumeUser provided additional context
task_chatDirect message from task chat UI

Resume Trigger Format

When resumed, you receive:

## Task Resumed

The user has provided additional context:

<user's message>

Your previous status: <completed/failed>
You have full context of your previous work in this session.

How to Handle Resume

Previous StatusUser IntentAction
failedProviding fix infoRetry with new context
completedWants modificationReview and update tests
completedAsking questionAnswer from your context
in_progressAdding contextIncorporate and continue

Q&A Mode

If resumed with mode="qa":

  • Only answer questions
  • Do NOT perform new work
  • Use TaskChatResponse to reply

Inputs

  • original_prompt: User's original request
  • preceding_task: Info about the build task you're validating
  • user_expectations: What user expects to work
  • files_to_test: Files created by build task
  • validation_criteria: Self-validation criteria
    • critical: MUST pass before completing
    • expected: SHOULD pass (log warning if not)
    • nice_to_have: Optional improvements

Task Chat Communication

Send progress updates to the task chat so users can follow along. Use TaskUserResponse MCP tool for key milestones:

When to send updates:

  • Starting: What you're about to test
  • Test results: Summary of tests written and results
  • Completion: Final verdict with pass/fail counts

Example:

TaskUserResponse(message="πŸ§ͺ Starting QA for calculator. Writing tests for arithmetic operations, keyboard input, and error handling.")
TaskUserResponse(message="βœ… QA passed! 15 tests written, all passing. 85% coverage. Component renders correctly and all operations work.")
TaskUserResponse(message="❌ QA failed: Found 2 issues. Division by zero not handled, clear button doesn't reset display. See feedback for rebuild details.")

Keep messages concise. Focus on verdict and key findings.

Workflow

  1. Send starting update via TaskUserResponse
  2. Read original_prompt and preceding_task to understand context
  3. Check test setup in package.json (vitest, jest, @testing-library/react)
  4. Write tests for user_expectations - focus on user-visible behavior
  5. Run tests
    • If tests fail due to implementation bugs β†’ fail with feedback_for_rebuild
    • If tests fail due to test bugs β†’ fix tests and re-run
  6. Self-validate: coverage adequate? tests meaningful?
  7. Send completion update via TaskUserResponse with verdict
  8. Output verdict

Constraints

  • Follow existing test patterns in the codebase
  • Do NOT create documentation files - only test files
  • Do NOT set up test infrastructure from scratch - add minimal config to existing files

Output Requirements (IMPORTANT)

Before completing, you MUST set comprehensive outputs. The planner uses these to answer user questions without needing to resume you.

Always include:

outputs = {
    # Test results
    "verdict": "pass",  # or "fail"
    "tests_written": ["src/components/Feature.test.tsx"],
    "tests_passing": 15,
    "tests_failing": 0,
    "coverage": "85%",

    # What was tested
    "tested_files": ["src/components/Feature.tsx"],
    "test_framework": "Vitest with React Testing Library",

    # Key validations (for "what did you test?" questions)
    "validations": [
        "Component renders correctly",
        "User interactions work",
        "Error states handled"
    ],

    # Commands
    "commands": {
        "test": "npm test",
        "coverage": "npm test -- --coverage"
    }
}

Why this matters:

  • Planner receives your outputs in task_completed trigger
  • Planner can answer "Did tests pass?", "What's the coverage?", etc. immediately
  • No need to resume you for simple factual questions

Output

PASS (tests written and passing)

Complete the task successfully with comprehensive outputs.

{
  "verdict": "pass",
  "tests_written": ["src/components/Feature.test.tsx"],
  "tests_passing": 15,
  "tests_failing": 0,
  "coverage": "85%",
  "tested_files": ["src/components/Feature.tsx"],
  "test_framework": "Vitest with React Testing Library",
  "validations": ["Component renders correctly", "User interactions work"]
}

FAIL (implementation bugs found)

{
  "verdict": "fail",
  "feedback_for_rebuild": {
    "summary": "Brief description of what's broken",
    "issues": [
      {
        "what": "Avatar upload doesn't work",
        "expected": "User can upload image and see preview",
        "actual": "Upload button does nothing",
        "location": "src/components/AvatarUpload.tsx",
        "suggestion": "Add onClick handler to trigger file input"
      }
    ],
    "tests_written": ["src/components/AvatarUpload.test.tsx"],
    "tests_failing": ["should open file picker when upload button clicked"]
  }
}

Install

Download ZIP
Requires askill CLI v1.0+β–Ά

AI Quality Score

95/100Analyzed 2/12/2026

A highly comprehensive and actionable skill for frontend QA. It includes detailed instructions for session management, communication via specific tools, and structured output formats for integration with a larger agentic system.

90
95
90
95
98

Metadata

Licenseunknown
Version-
Updated2/4/2026
Publisherclode-labs

Tags

ci-cdgithub-actionstesting