visual-qa-testing
Visually QA a web application by launching it in Cursor's built-in browser, taking screenshots, checking console errors, and auditing network requests. Use after making UI changes to verify they look correct.
Install
npx skills add https://github.com/spencerpauly/awesome-cursor-skills/tree/main/resources/visual-qa-testing
claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install spencerpauly-awesome-cursor-skills@llmmart
git clone https://github.com/spencerpauly/awesome-cursor-skills.git
The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole spencerpauly/awesome-cursor-skills collection as a plugin from our marketplace. Git is the plain clone.
Skill manifest
Visual QA
Use this skill after making UI changes to visually verify the result, catch console errors, and audit network requests — all without leaving Cursor.
How It Works
Cursor has a built-in browser (cursor-ide-browser MCP) that can navigate to URLs, take screenshots, read console messages, inspect network requests, and interact with page elements. This skill uses those tools to do a quick visual QA pass.
Steps
Ensure the dev server is running — check if there's already a terminal running the dev server. If not, start one in the background:
npm run devWait for the server to be ready (watch for the "ready" or localhost URL in the output).
Navigate to the page — use
browser_navigateto open the relevant page:Tool: browser_navigate Arguments: { "url": "http://localhost:3000", "take_screenshot_afterwards": true }If the change is on a specific route, navigate directly to it (e.g.,
/settings,/dashboard).Take a screenshot — capture the current state:
Tool: browser_take_screenshot Arguments: { "fullPage": true }Review the screenshot for visual issues: layout breaks, missing content, wrong colors, misaligned elements.
Check console for errors — look for JavaScript errors or warnings:
Tool: browser_console_messagesReport any errors, especially
TypeError,ReferenceError, failed imports, or React hydration mismatches.Audit network requests — check for failed API calls or unexpected requests:
Tool: browser_network_requestsLook for: 4xx/5xx status codes, CORS errors, excessively large responses, unnecessary duplicate requests.
Interact if needed — if the change involves interactive elements (buttons, forms, modals), use
browser_click,browser_fill, orbrowser_hoverto test the interaction, then take another screenshot to verify.Report findings — summarize:
- Screenshot shows the UI looks correct (or what's wrong)
- Console is clean (or list errors found)
- Network requests are healthy (or list failures)
Notes
- Always use
browser_snapshotbefore clicking elements to get the correct element refs. - For responsive testing, use
browser_resizeto check different viewport sizes. - Use
browser_navigatewithposition: "side"to open the browser beside your code.
Files (awesome-cursor-skills)
-
SKILL.md 2.6 KB
--- name: visual-qa-testing description: Visually QA a web application by launching it in Cursor's built-in browser, taking screenshots, checking console errors, and auditing network requests. Use after making UI changes to verify they look correct. --- # Visual QA Use this skill after making UI changes to visually verify the result, catch console errors, and audit network requests — all without leaving Cursor. ## How It Works Cursor has a built-in browser (`cursor-ide-browser` MCP) that can navigate to URLs, take screenshots, read console messages, inspect network requests, and interact with page elements. This skill uses those tools to do a quick visual QA pass. ## Steps 1. **Ensure the dev server is running** — check if there's already a terminal running the dev server. If not, start one in the background: ```bash npm run dev ``` Wait for the server to be ready (watch for the "ready" or localhost URL in the output). 2. **Navigate to the page** — use `browser_navigate` to open the relevant page: ``` Tool: browser_navigate Arguments: { "url": "http://localhost:3000", "take_screenshot_afterwards": true } ``` If the change is on a specific route, navigate directly to it (e.g., `/settings`, `/dashboard`). 3. **Take a screenshot** — capture the current state: ``` Tool: browser_take_screenshot Arguments: { "fullPage": true } ``` Review the screenshot for visual issues: layout breaks, missing content, wrong colors, misaligned elements. 4. **Check console for errors** — look for JavaScript errors or warnings: ``` Tool: browser_console_messages ``` Report any errors, especially `TypeError`, `ReferenceError`, failed imports, or React hydration mismatches. 5. **Audit network requests** — check for failed API calls or unexpected requests: ``` Tool: browser_network_requests ``` Look for: 4xx/5xx status codes, CORS errors, excessively large responses, unnecessary duplicate requests. 6. **Interact if needed** — if the change involves interactive elements (buttons, forms, modals), use `browser_click`, `browser_fill`, or `browser_hover` to test the interaction, then take another screenshot to verify. 7. **Report findings** — summarize: - Screenshot shows the UI looks correct (or what's wrong) - Console is clean (or list errors found) - Network requests are healthy (or list failures) ## Notes - Always use `browser_snapshot` before clicking elements to get the correct element refs. - For responsive testing, use `browser_resize` to check different viewport sizes. - Use `browser_navigate` with `position: "side"` to open the browser beside your code.
Comments (0)
Sign in to join the conversation.
Reviews (0)
No reviews yet.
No comments yet.