openspec-e2e

Standardize OpenSpec E2E test case naming and organization for Playwright tests.

17|7|Updated Mar 30, 2026
One-click install
npx skills add https://github.com/gqcn/openspec-practice --skill openspec-e2e
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: openspec-e2e
Source: https://github.com/gqcn/openspec-practice/tree/main/.agents/skills/openspec-e2e
Command: npx skills add https://github.com/gqcn/openspec-practice --skill openspec-e2e

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

OpenSpec projects often struggle with inconsistent E2E test naming, scattered test organization, and unclear TC allocation across modules. This Skill standardizes how Playwright E2E tests are organized, named, and reasoned about within the OpenSpec workflow.

Core Features & Use Cases

  • TC naming pattern TC{NNNN}-<brief-name>.ts establishes global uniqueness and predictable ordering of test files.
  • Directory structure by module under hack/tests/e2e to reflect feature areas like auth, notebook, and admin.
  • Global TC ID allocation by scanning existing files and incrementing the maximum TC number to avoid reuse.
  • File independence rules and sub-assertion patterns enable isolated, maintainable tests.

Quick Start

Apply these conventions when creating, planning, or reviewing OpenSpec E2E test cases.

Frequently Asked Questions about openspec-e2e

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I organize Playwright E2E tests by module to avoid scattered test files?

Organize Playwright E2E tests by placing test files under hack/tests/e2e in directories that reflect feature areas like auth, notebook, and admin. This directory structure reduces ambiguity in test organization and clarifies module boundaries across your project.

What is the best way to name E2E test cases for global uniqueness and predictable ordering?

The best way to name E2E test cases is using the TC{NNNN}-<brief-name>.ts pattern. This convention establishes global uniqueness and predictable ordering by allocating a globally incrementing TC number, avoiding ID reuse across all test files.

How do I prevent test ID collisions when adding new Playwright E2E tests?

Prevent test ID collisions by scanning existing test files to find the maximum TC number and incrementing it for the new test. This global TC ID allocation method ensures no IDs are reused and maintains consistent numbering across all modules.

Can I execute OpenSpec Playwright E2E test files in isolation without dependencies?

Yes, you can execute OpenSpec Playwright E2E test files in isolation. File independence rules and sub-assertion patterns enable each test to run independently, ensuring maintainable tests that do not rely on the execution state of other test cases.

Does this E2E test standardization approach work without external dependencies?

Yes, this E2E test standardization approach works without external dependencies. It applies structural conventions directly to your Playwright test files and directory organization, requiring no additional packages or components to enforce the TC naming and module grouping.

Why should I standardize E2E test naming conventions across multiple modules?

You should standardize E2E test naming conventions to reduce ambiguity in test organization and unclear TC allocation across modules. Applying consistent TC IDs and a predictable directory structure makes test suites easier to navigate, maintain, and execute.