AgentSkillsCN

e2e-testing

使用 Playwright 结合自定义 Fixture、页面对象模型和认证上下文,强制执行项目端到端测试规范。

SKILL.md
--- frontmatter
name: e2e-testing
description: Enforces project E2E testing conventions using Playwright with custom fixtures, Page Object Model, and authentication contexts.

E2E Testing Skill

Purpose

This skill provides end-to-end testing conventions using Playwright. E2E tests validate complete user flows with browser automation.

Activation

This skill activates when:

  • Creating or modifying files in tests/e2e/specs/
  • Testing complete user flows
  • Working with Playwright
  • Creating or modifying Page Object Model classes
  • Working with authentication contexts

File Patterns

  • tests/e2e/specs/**/*.spec.ts
  • tests/e2e/pages/**/*.page.ts

Workflow

  1. Detect E2E test work (file path contains tests/e2e/)
  2. Load references/E2E-Testing-Conventions.md
  3. Also load testing-base skill for shared conventions
  4. Apply Playwright patterns with custom fixtures
  5. Use Page Object Model for reusable interactions

Key Patterns (REQUIRED)

Custom Fixtures

  • Use fixtures from tests/e2e/fixtures/base.fixture.ts
  • Available: adminPage, userPage, newUserPage (authenticated contexts)
  • Available: adminFinder, userFinder, newUserFinder (ComponentFinder instances)

Page Object Model

  • Extend BasePage class for page objects
  • Define url property for navigation
  • Use byTestId helper for data-testid lookups

ComponentFinder

  • Use for standardized data-testid lookups
  • Methods: feature(), form(), ui(), layout(), tableCell()

Test Organization

  • Place in appropriate tests/e2e/specs/{category}/ folder
  • Categories: smoke, public, user, admin, onboarding

References

  • references/E2E-Testing-Conventions.md - Complete E2E testing conventions