playwright-test

Schreibe einen Playwright-Test, stelle sicher, dass er läuft und nicht flaky ist.

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

Mehr Skills von posthog

error-tracking-hono
posthog
PostHog Fehlerverfolgung für Hono
tuning-incremental-sync-config
posthog
Die Konfiguration einer Synchronisation befindet sich auf dem ExternalDataSchema und kann jederzeit über external-data-schemas-partial-update geändert werden. Die meisten Änderungen sind nicht destruktiv (wirken sich auf die nächste Synchronisation aus), aber einige (Wechsel des sync_type, Änderung von Primärschlüsseln) erfordern eine sorgfältige Handhabung, um eine Beschädigung der synchronisierten Daten zu vermeiden.
error-tracking-ruby
posthog
PostHog Fehlerverfolgung für Ruby
authoring-log-alerts
posthog
Erstelle nützliche, rauscharme Log-Benachrichtigungen für Dienste in einem PostHog-Projekt. Verwende dies, wenn der Benutzer darum bittet, Benachrichtigungen für seine Logs einzurichten, oder wenn du Benachrichtigungen vorschlagen sollst, die er hinzufügen sollte,…
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
Erstellen und konfigurieren Sie Umfragen in PostHog durch geführte Konversation. Verwenden Sie diese Fähigkeit, wenn ein Benutzer eine Umfrage erstellen, Benutzerfeedback sammeln, durchführen…
authoring-scouts
posthog
Wie man PostHog Signals Scouts erstellt, bearbeitet und anpasst – die geplanten Agenten, die ein Projekt scannen und Berichte in den Signals-Posteingang schreiben. Verwenden Sie, wenn ein Benutzer…
integration-ruby
posthog
PostHog-Integration für jede Ruby-Anwendung mit dem Ruby SDK