webapp_testing

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

Updated Jan 14, 2026
One-click install
npx skills add https://github.com/jvsandhu/agentic-skills --skill webapp-testing-jvsandhu
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: webapp_testing
Source: https://github.com/jvsandhu/agentic-skills/tree/main/skills/webapp_testing
Command: npx skills add https://github.com/jvsandhu/agentic-skills --skill webapp-testing-jvsandhu

SYSTEM DOCUMENTATION & REQUIREMENTS

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

What problem does it solve? Testing local web applications manually is slow and error-prone, especially when verifying frontend behavior, debugging UI issues, or capturing browser state across dynamic JavaScript-rendered pages. ## Core Features & Use Cases - Server Lifecycle Management: The scripts/with_server.py helper starts one or more servers (frontend and backend), waits for readiness, runs your automation, and cleans up automatically. - Reconnaissance-Then-Action Pattern: Inspect the rendered DOM after networkidle, identify stable selectors, then execute clicks, form fills, and assertions with Playwright. - Debugging & Reporting: Capture console logs, take full-page screenshots, and analyze network errors for failed tests. - Use Case: You have a React frontend on port 5173 and a Python backend on port 3000. Use the helper to launch both servers, then run a Playwright script that logs in, navigates the dashboard, and verifies page content headlessly. ## Quick Start Ask the agent 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 networkidle, and verifies the expected elements.

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 in Python?

Write a Python script using playwright.sync_api, launch Chromium in headless mode, navigate to your local server URL, and wait for the networkidle load state before interacting with elements. 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 like a frontend and backend?

Use the with_server.py helper with repeated --server and --port flags for each server, followed by your test command after a double dash. It starts each server, waits for its port to accept connections, runs your command, then terminates all servers.

Why does Playwright fail to find elements on dynamic web pages?

Elements are missing because the script inspects the DOM before JavaScript finishes rendering. Call page.wait_for_load_state('networkidle') after navigation, then take a screenshot or read page.content() to discover the actual rendered selectors.

Can Playwright automate static HTML files without a server?

Yes, Playwright can open local HTML files directly using file:// URLs built from absolute paths. You can then click elements, fill forms, and capture screenshots exactly as you would against a served page.

How do I capture browser console logs during Playwright automation?

Register a handler with page.on('console', handler) before navigating, and append each message's type and text to a list. After the session, write the collected messages to a log file for debugging.