skills/general/qa-test-case-writer/SKILL.md
Comprehensive UI test case generation for QA teams. Use when the user wants to write test cases for a feature, project, or webpage. Generates happy flow, edge cases, and security test cases for client-facing UI (not API tests). Creates test cases in Notion databases following standardized format with Test Case ID, Title, Pre-condition, Test Steps, Expected Result, Test Data, Post-condition, Priority (P0-P3), and status tracking. Triggers on requests like "write test cases for [feature]", "create QA tests", "generate test scenarios", or when user provides feature documentation to test.
npx skillsauth add beam-ai-team/beam-next-skills qa-test-case-writerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Generate comprehensive UI test cases for client-facing web applications and push them to Notion databases.
Obtain complete feature details from the user through one of these methods:
If information is incomplete, ask clarifying questions about:
Ask user for:
If user provides a Notion URL, fetch the existing database to:
Create test cases covering these categories:
Each test case must follow this exact schema:
| Field | Description | Example | |-------|-------------|---------| | Test Case ID | Prefix + sequential number | SI-001, WS-015 | | Test Case Title | Brief descriptive title | Valid login with correct credentials | | Pre-Condition | Required state before test | User exists with verified email | | Test Steps | Numbered steps to execute | 1) Enter email → Next 2) Enter password → Submit | | Expected Result | What should happen | Login success → Redirect to dashboard | | Test Data | Specific data for the test | Email: [email protected], Pass: ValidPass@123 | | Post Condition | State after test completes | Session active, user logged in | | Priority | P0 (Critical) to P3 (Low) | P0 |
Use the existing Test Case Template to create test case pages efficiently.
https://www.notion.so/2d92cadfbbbc80659271c50ea2d52415collection://2d92cadf-bbbc-80a5-b179-000b911e5f5eIf user provides an existing feature page URL with an inline database:
Fetch the target page to get the inline database data source:
Notion:notion-fetch with the page URL
Get the data source URL from the inline database (look for data-source-url in the response)
Create test case pages using Notion:notion-create-pages:
{
"parent": {"data_source_id": "<data-source-id-from-step-2>"},
"pages": [
{
"properties": {
"Test Case ID": "SI-001",
"Test Case Title": "Valid login with correct credentials",
"Pre-Condition": "User exists with verified email",
"Test Steps": "1) Enter whitelisted email → Next 2) Enter correct password → Submit",
"Expected Result": "Login success → Redirect to workspace/onboarding",
"Test Data": "Email: [email protected], Pass: ValidPass@123",
"Post Condition": "Session active",
"Priority": "P0"
}
}
]
}
If user needs a new feature page for test cases:
Duplicate the template page using Notion:notion-duplicate-page:
{
"page_id": "2d92cadfbbbc80659271c50ea2d52415"
}
Rename the duplicated page using Notion:notion-update-page with the feature name
Fetch the new page to get its inline database data source URL
Create test case pages in the new database using Notion:notion-create-pages
| Property | Type | Values | |----------|------|--------| | Test Case ID | title | e.g., "SI-001" | | Test Case Title | text | Descriptive title | | Pre-Condition | text | Required state before test | | Test Steps | text | Numbered steps | | Expected Result | text | What should happen | | Test Data | text | Specific test data | | Post Condition | text | State after test | | Priority | select | P0, P1, P2, P3 | | Status by Dev | status | Not started, Failed, Passed | | Status by QA | status | Not started, Failed, Passed |
Important:
[email protected], ValidPass@123[valid_token], [user_email]Reference references/security-tests.md for common security test patterns including:
Reference references/ui-test-patterns.md for:
For a "Password Reset" feature, generate test cases like:
| ID | Title | Pre-Condition | Test Steps | Expected Result | Test Data | Post Condition | Priority | |----|-------|---------------|------------|-----------------|-----------|----------------|----------| | PR-001 | Valid password reset request | User exists with verified email | 1) Click "Forgot Password" 2) Enter registered email → Submit | Success message shown, reset email sent | Email: [email protected] | Reset token generated | P0 | | PR-002 | Reset with invalid email format | None | 1) Click "Forgot Password" 2) Enter invalid email → Submit | Validation error: "Invalid email format" | Email: invalid-email | No email sent | P1 | | PR-003 | SQL injection in email field | None | 1) Enter malicious input in email field → Submit | Input sanitized, appropriate error shown | Email: [email protected]' OR 1=1-- | No bypass, no data leak | P0 |
development
--- name: taste-skill type: skill version: '1.0' author: Leonxlnx (packaged by Zhichao Li) category: general tags: - frontend - design - anti-slop - landing-page updated: '2026-06-11' visibility: public description: Anti-slop frontend skill for landing pages, portfolios, and redesigns. The agent reads the brief, infers the right design direction, and ships interfaces that do not look templated. Real design systems when applicable, audit-first on redesigns, strict pre-flight check. license: MIT.
development
Use when communicating quantitative information in any form — Slack updates, emails, reports, decks, dashboards, landing pages, product UI, public talks. Covers two integrated layers: (1) making numbers semantically meaningful (translation, anchoring, simplification, story-pairing) and (2) showing numbers cleanly (chart vs table vs prose, chart-by-message, pre-attentive emphasis, color discipline, decluttering). Distilled and integrated from *Show Me the Numbers* (Stephen Few) and *Make Numbers Count* (Chip Heath & Karla Starr). Not for raw data analysis or statistics — this is about communication of numbers, not their derivation.
development
Use when the user wants to design, redesign, shape, critique, audit, polish, clarify, distill, harden, optimize, adapt, animate, colorize, extract, or otherwise improve a frontend interface. Covers websites, landing pages, dashboards, product UI, app shells, components, forms, settings, onboarding, and empty states. Handles UX review, visual hierarchy, information architecture, cognitive load, accessibility, performance, responsive behavior, theming, anti-patterns, typography, fonts, spacing, layout, alignment, color, motion, micro-interactions, UX copy, error states, edge cases, i18n, and reusable design systems or tokens. Also use for bland designs that need to become bolder or more delightful, loud designs that should become quieter, live browser iteration on UI elements, or ambitious visual effects that should feel technically extraordinary. Not for backend-only or non-UI tasks.
tools
Stateful multi-session tutor adapted for Beam — teach a stakeholder to understand, trust, and operate a specific agent, or teach a Solution Engineer a client's business process for delivery. Grounds every lesson in Knowledge Hub sources (real agent graphs, real tasks, transcripts, Linear) before any web resource. Also works for any general topic. Trigger on "teach me", "beam teach", "教我", "onboard <person> on <agent>", "help <stakeholder> understand the agent", "learn this client's process".