webapp-testing

Automates browser testing of local web applications using Python Playwright scripts.

Updated Jul 7, 2026
One-click install
npx skills add https://github.com/singhaganesh/Urban-assist --skill webapp-testing-singhaganesh
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: webapp-testing
Source: https://github.com/singhaganesh/Urban-assist/tree/main/.cursor/skills/webapp-testing
Command: npx skills add https://github.com/singhaganesh/Urban-assist --skill webapp-testing-singhaganesh

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires playwright, and includes scripts (resource) components.

What problem does it solve? Manually verifying frontend behavior of local web applications is slow and error-prone, especially when servers must be started, pages must finish rendering, and UI selectors must be discovered before any interaction can happen. ## Core Features & Use Cases - Server Lifecycle Management: The scripts/with_server.py helper starts one or more servers (e.g., backend plus frontend), waits for their ports to be ready, runs your automation, and cleans up afterward. - Playwright Browser Automation: Write native Python Playwright scripts to navigate pages, click elements, fill forms, capture screenshots, and record console logs. - Reconnaissance-Then-Action Workflow: Inspect the rendered DOM after networkidle, discover buttons, links, and inputs, then execute actions with the discovered selectors. - Use Case: Start a Next.js dev server and a backend API together, then run a script that logs in, clicks through the booking flow, and saves screenshots plus console logs for debugging. ## Quick Start Ask the AI to test your local web app by starting the dev server with the with_server.py helper and writing a Playwright script that navigates to the page, waits for it to load, and captures a screenshot.

Frequently Asked Questions about webapp-testing

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I test a local web application with Playwright?

Write a Python script using sync_playwright, launch Chromium in headless mode, navigate to your localhost URL, and wait for the networkidle load state before interacting. Use the with_server.py helper to start your dev server automatically before the script runs.

How do I run Playwright tests against multiple servers at once?

Pass multiple --server and --port pairs to with_server.py, for example a backend on port 3000 and a frontend on port 5173. The script starts each server, waits for its port to accept connections, then runs your automation command.

Why does my Playwright script fail to find elements on a dynamic page?

The script likely inspects the DOM before JavaScript finishes rendering. Call page.wait_for_load_state('networkidle') after navigation, then take a screenshot or list elements to discover the actual rendered selectors.

Can Playwright capture browser console logs during automation?

Yes, register a handler with page.on('console', handler) before navigating. Each console message is passed to the handler, where you can print it or append it to a list and save the logs to a file after the browser closes.

Does this approach work with static HTML files without a server?

Yes, Playwright can open local files directly using file:// URLs built from the absolute path of the HTML file. You can then screenshot the page, fill forms, and click elements without starting any server.