webapp-testing_skill

This skill helps you test local web applications using Playwright, capturing logs and screenshots while debugging UI behavior.

0

GitHub Stars

1

Bundled Files

2 months ago

Catalog Refreshed

4 months ago

First Indexed

Readme & install

Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.

Installation

Preview and clipboard use veilstrat where the catalogue uses aiagentskills.

npx veilstrat add skill ladderchaos/tora-skills --skill webapp-testing

  • SKILL.md3.3 KB

Overview

This skill lets you test local web applications using Playwright with tooling to manage local servers, inspect rendered pages, capture screenshots, and collect browser logs. It focuses on practical workflows for both static HTML and dynamic apps, with helper scripts to launch one or multiple local servers and templates for synchronous automation. The goal is fast, repeatable frontend verification and debugging during development.

How this skill works

The toolkit provides a server lifecycle helper (scripts/with_server.py) that can start one or several dev servers and run your Playwright script against them. For dynamic apps it follows a reconnaissance-then-action pattern: wait for networkidle, capture screenshots or DOM, identify selectors, then perform actions. It includes example templates and patterns for synchronous Playwright scripts, selector discovery, and console logging capture.

When to use it

  • Writing automated checks for a local frontend or full-stack dev environment
  • Debugging UI behavior or intermittent rendering issues by capturing screenshots and logs
  • Verifying static HTML files via file:// or simple selector checks
  • Running end-to-end checks that require starting one or more local servers
  • Quick reconnaissance to find reliable selectors before implementing actions

Best practices

  • Run scripts with --help first and use provided helpers as black boxes rather than editing them
  • Always call page.wait_for_load_state('networkidle') before inspecting DOM on dynamic apps
  • Use sync_playwright() for straightforward synchronous scripts and always close the browser when finished
  • Prefer descriptive selectors (text=, role=, ids, or clear CSS selectors) and add explicit waits like page.wait_for_selector()
  • Capture screenshots and page.content() during reconnaissance to discover stable selectors and reproduce issues

Example use cases

  • Start frontend and backend together, then run a Playwright script that logs in, navigates, and asserts key UI states
  • Load a static HTML file with file:// and validate presence and attributes of elements without starting a server
  • Reproduce flaky rendering by taking full-page screenshots after networkidle, saving console logs, and attaching them to bug reports
  • Discover interactive element selectors by listing buttons/inputs and iterating with locator queries before writing assertions
  • Run a quick smoke test during CI by launching servers transiently with scripts/with_server.py and running a headless Playwright check

FAQ

No. Run python scripts/with_server.py --help to see usage and invoke it as a black box; only inspect source if customization is absolutely necessary.

How do I handle dynamic content reliably?

Always wait for page.wait_for_load_state('networkidle') or page.wait_for_selector() before inspecting or acting. Use screenshots and page.content() to locate stable selectors first.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational