AgentSkillsCN

Playwright Rules

全面的Playwright规则与最佳实践,用于编写可靠、可维护的端到端测试。当编写、审查或调试Playwright测试时使用。

SKILL.md
--- frontmatter
description: Comprehensive Playwright rules and best practices for writing reliable, maintainable E2E tests. Use when writing, reviewing, or debugging Playwright tests.

Playwright Rules

A comprehensive guide to Playwright best practices, patterns, and anti-patterns for writing reliable end-to-end tests.

Quick Reference

Locators (Most Important)

DoDon't
getByRole('button', { name: 'Submit' })locator('.btn-submit')
getByTestId('user-avatar')locator('#avatar-12345')
getByLabel('Email')locator('input[type="email"]')
locator('.item').first()locator('.item') (when multiple)

Waits (Critical for Stability)

DoDon't
await expect(el).toBeVisible()await page.waitForTimeout(1000)
await page.waitForURL('/dashboard')await page.waitForLoadState('networkidle')
await response.finished()await page.waitForTimeout(500)

Assertions (Web-First Always)

DoDon't
await expect(locator).toHaveText('Hello')expect(await locator.textContent()).toBe('Hello')
await expect(locator).toBeVisible()expect(await locator.isVisible()).toBe(true)
await expect(page).toHaveURL('/home')expect(page.url()).toBe('/home')

Rule Categories

  1. Locators - Finding elements reliably
  2. Waits & Timing - Handling async operations
  3. Assertions - Verifying outcomes
  4. Page Objects - Organizing locators
  5. Test Organization - Structuring tests
  6. Network - Mocking and interception
  7. Debugging - Troubleshooting failures
  8. Parallelization - Running tests safely

Usage

In Triqual Workflows

This skill is automatically consulted when:

  • Writing new .spec.ts files
  • Debugging flaky tests
  • Reviewing test code

Manual Invocation

code
/rules

In Code Reviews

Reference specific rules:

code
This violates [wait-no-timeout](./rules/wait-no-timeout.md) -
use `await expect(element).toBeVisible()` instead of `waitForTimeout`.

All Rules

See rules/_sections.md for the complete index.

Contributing

See rules/_contributing.md for guidelines on adding new rules.