playwright-test

от posthog

Напишите playwright-тест, убедитесь, что он выполняется и не является нестабильным.

npx skills add https://github.com/posthog/posthog --skill playwright-test

Read @playwright/README.md for best practices, gotchas, and how to run tests.

Rules

  • Follow the best practices in the README strictly
  • After UI interactions, always assert on UI changes, do not assert on network requests resolving
  • Keep looping until all tests pass. Do not give up or ask the user for help. You must resolve every failure yourself.

Instructions

You are to plan an end to end playwright test for a feature.

Step 1: Plan the test(s) to be done.

Use the Playwright MCP tools (e.g., mcp__playwright__browser_navigate, mcp__playwright__browser_click, mcp__playwright__browser_screenshot) to interact with the browser and plan your tests.

After your exploration, present the plan to me for confirmation or any changes.

Step 2: Implement the test plan

  • Write the tests, making sure to use common patterns used in neighbouring files.
  • Run the tests with BASE_URL='http://localhost:8010' pnpm --filter=@posthog/playwright exec playwright test <file name> --retries 0 --workers 3
  • Debug any failures. Look at screen shots, if needed launch the playwright mcp skills to interact with the browser. Go back to step 1 after attempting a fix.

Step 3: Ensure no flaky tests

After all tests pass in the file, run with --repeat-each 10 added to the command. This will surface any flaky tests.

If any test fails across the 10 runs, treat it as a real failure: go back to Step 2, debug, fix, and re-run Step 3. Do not proceed to Step 4 until every run of every test passes.

Step 4: Report

Once all tests pass, output a single line: Testing Complete

Больше skills от posthog

error-tracking-hono
posthog
Отслеживание ошибок PostHog для Hono
tuning-incremental-sync-config
posthog
Конфигурация синхронизации хранится в ExternalDataSchema и может быть изменена в любое время через external-data-schemas-partial-update. Большинство изменений являются недеструктивными (вступают в силу при следующей синхронизации), но некоторые (смена sync_type, изменение первичных ключей) требуют осторожного обращения, чтобы избежать повреждения синхронизированных данных.
error-tracking-ruby
posthog
Отслеживание ошибок PostHog для Ruby
authoring-log-alerts
posthog
Создавайте полезные, малошумящие оповещения по логам для сервисов в проекте PostHog. Используйте, когда пользователь просит настроить оповещения для своих логов, предложите оповещения, которые стоит добавить,…
making-scenes-tab-aware
posthog
Guides converting PostHog frontend scenes to be tab aware for internal scene tabs. Use when adding or refactoring a `SceneExport` scene, fixing state leaking…
posthog-survey-creator
posthog
Создание и настройка опросов в PostHog через направленный диалог. Используйте этот навык, когда пользователь хочет создать опрос, собрать отзывы пользователей, запустить…
authoring-scouts
posthog
Как создавать, редактировать и адаптировать скауты PostHog Signals — запланированные агенты, которые сканируют проект и записывают отчёты в папку входящих Signals. Используйте, когда пользователь…
integration-ruby
posthog
Интеграция PostHog для любого Ruby-приложения с использованием Ruby SDK