web-qa-bot
AI-powered web application QA automation using accessibility-tree based testing. Smoke tests, test suites, and PDF reports.
Install
mkdir -p .claude/skills/web-qa-bot && curl -L -o skill.zip "https://mcp.directory/api/skills/download/1280" && unzip -o skill.zip -d .claude/skills/web-qa-bot && rm skill.zipInstalls to .claude/skills/web-qa-bot
About this skill
web-qa-bot
AI-powered web application QA automation using accessibility-tree based testing.
Overview
This skill provides tools for automated QA testing of web applications. It uses browser accessibility trees for reliable element detection instead of fragile CSS selectors.
Installation
npm install -g web-qa-bot agent-browser
agent-browser install
Commands
Quick Smoke Test
web-qa-bot smoke https://example.com
Runs basic health checks:
- Page loads successfully
- No console errors
- Navigation elements present
- Images have alt text
Run Test Suite
web-qa-bot run ./tests/suite.yaml --output report.md
Generate PDF Report
web-qa-bot report ./results.json -o report.pdf -f pdf
Use Cases
1. Quick Site Health Check
# Smoke test a production URL
web-qa-bot smoke https://app.example.com --checks pageLoad,consoleErrors,navigation
2. Pre-deployment QA
Create a test suite and run before each deployment:
# tests/critical-paths.yaml
name: Critical Paths
baseUrl: https://staging.example.com
tests:
- name: Login flow
steps:
- goto: /login
- type: { ref: Email, text: [email protected] }
- type: { ref: Password, text: testpass }
- click: Sign In
- expectVisible: Dashboard
- expectNoErrors: true
web-qa-bot run ./tests/critical-paths.yaml --output qa-report.pdf -f pdf
3. Monitor for Regressions
# Run tests and fail CI if issues found
web-qa-bot run ./tests/smoke.yaml || exit 1
4. Programmatic Testing
import { QABot } from 'web-qa-bot'
const qa = new QABot({
baseUrl: 'https://example.com',
headless: true
})
await qa.goto('/')
await qa.click('Get Started')
await qa.snapshot()
qa.expectVisible('Sign Up')
await qa.close()
Integration with agent-browser
This tool wraps agent-browser CLI for browser automation:
# Connect to existing browser session
web-qa-bot smoke https://example.com --cdp 18800
# Run headed for debugging
web-qa-bot run ./tests/suite.yaml --no-headless
Test Results Format
Results are returned as structured JSON:
{
"name": "Smoke Test",
"url": "https://example.com",
"summary": {
"total": 4,
"passed": 3,
"failed": 0,
"warnings": 1
},
"tests": [
{
"name": "Page Load",
"status": "pass",
"duration": 1234
}
]
}
Tips
- Use role-based selectors - More reliable than CSS classes
- Check console errors - Often reveals hidden issues
- Test both navigation methods - Direct URL and in-app routing
- Screenshot on failure - Automatic in test suites
- Monitor for modals - Can block interactions
Report Formats
- Markdown - Default, human-readable
- PDF - Professional reports via ai-pdf-builder
- JSON - Machine-readable for CI/CD
Troubleshooting
"agent-browser not found"
npm install -g agent-browser
agent-browser install
"Element not found"
Take a snapshot first to see available refs:
agent-browser snapshot
"Timeout waiting for element"
Increase timeout or check if element is behind a loading state:
steps:
- waitMs: 2000
- waitFor: "Loading" # Wait for loading to appear
- waitFor: "Content" # Then wait for content
Links
More by openclaw
View all skills by openclaw →You might also like
flutter-development
aj-geddes
Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.
ui-ux-pro-max
nextlevelbuilder
"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."
drawio-diagrams-enhanced
jgtolentino
Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.
godot
bfollington
This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.
nano-banana-pro
garg-aayush
Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.
pdf-to-markdown
aliceisjustplaying
Convert entire PDF documents to clean, structured Markdown for full context loading. Use this skill when the user wants to extract ALL text from a PDF into context (not grep/search), when discussing or analyzing PDF content in full, when the user mentions "load the whole PDF", "bring the PDF into context", "read the entire PDF", or when partial extraction/grepping would miss important context. This is the preferred method for PDF text extraction over page-by-page or grep approaches.
Related MCP Servers
Browse all serversUnlock AI-ready web data with Firecrawl: scrape any website, handle dynamic content, and automate web scraping for resea
Enhance productivity with AI-driven Notion automation. Leverage the Notion API for secure, automated workspace managemen
Automate macOS tasks with AppleScript and JavaScript. Control apps, files, and system efficiently using macOS Automator'
Automate desktop tasks using RobotJS for screen capture, keyboard, and mouse control—seamless integration with power aut
WebDriverIO MCP Server enables Claude Desktop to automate browsers and iOS/Android apps with WebDriverIO — offering brow
Browser Use lets LLMs and agents access and scrape any website in real time, making web scraping and web page scraping e
Stay ahead of the MCP ecosystem
Get weekly updates on new skills and servers.