windows-qa-engineer

Solid

Use when testing Windows 11 desktop apps (WinForms/WPF/UWP) via UFO UIA/Win32 automation MCP. Triggers on "test this Windows app", "QA the app", "run smoke test", "click the button", "fill the form", "check the UI", "Windows automation", "UFO QA", "verify the dialog", or any Windows desktop UI testing task. Not for web/browser testing (use Playwright), mobile testing, or non-Windows platforms.

Testing & QA 109 stars 8 forks Updated today MIT

Install

View on GitHub

Quality Score: 90/100

Stars 20%
68
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# Windows QA Engineer (UFO-powered) You are an AI-QA operator on the SAME Windows 11 desktop as the SUT. All automation uses UFO's real MCP tools (UICollector, HostUIExecutor, AppUIExecutor) -- no mocks. ## Auto-Setup (when MCP tools are missing) If UFO tools are NOT available as MCP tools, run setup before QA work: 1. Run: `python "<skill-dir>/scripts/skill_installer.py" --project-dir "<project-root>"` 2. Parse the JSON output — if `success` is true, tell user to restart Claude Code 3. If failed, show the error and direct user to [references/setup.md](references/setup.md) for manual install ## Mandatory Workflow Follow this sequence for every test run. Do not skip steps. ### 1. Discover windows - Call `qa_refresh_and_list_windows()` - Identify the SUT window by title hint from the user ### 2. Select window - Call `select_application_window(id, name)` (HostUIExecutor) - Call `capture_window_screenshot()` (UICollector) -- baseline screenshot ### 3. Collect controls - Call `qa_refresh_controls(field_list=["label","control_text","control_type","automation_id","control_rect"])` - Anchor on `id` + `control_text` / `automation_id` when the returned tree is usable - If control collection returns an error or an empty tree for a large/legacy WinForms window, continue with screenshot inspection and coordinate actions; do not repeatedly force full UIA subtree scans ### 4. Interact - Use `click_input(id, name)`, `set_edit_text(id, name, text)`, `keyboard_input(id, name, keys)` ...

Details

Author
CodeAlive-AI
Repository
CodeAlive-AI/ai-driven-development
Created
6 months ago
Last Updated
today
Language
Python
License
MIT

Integrates with

Bundled in these plugins

Similar Skills

Semantically similar based on skill content — not just same category

Testing & QA Listed

windows-desktop-e2e

Use when writing or debugging E2E tests for Windows native desktop apps (WPF, WinForms, Win32/MFC, Qt) with pywinauto and Windows UI Automation (UIA). Covers per-framework UIA reliability, testability setup, the pywinauto locator/wait/action API, Qt version-specific gotchas (QT_ACCESSIBILITY, Qt5/Qt6 window class names), screenshot fallback with DPI rules, and Job Object process containment.

1 Updated yesterday
Mixard
AI & Automation Listed

windows_vm_gui

Drive the Windows Test VM's GUI — Windows-MCP in the guest, UIA-tree clicking by element ID (never blind coordinates), screenshot verification between actions, and mouse-free in-process test paths for anything repeatable. Exploratory GUI QAQC where windows_devkit's exec loop can't see the UI.

15 Updated today
jedbjorn
Testing & QA Listed

app-qa

Visually verify treq UI/behavior changes by driving the real app (real jj repo via NAPI, real Rust dispatch, jsdom-rendered React) with @testing-library/user-event and capturing before/after screenshots through the Chromium rasterization harness in scripts/screenshot/. Use explicitly when the user runs /app-qa or asks to screenshot, QA, or visually check a behavior. ALSO use proactively, without being asked, right after implementing or modifying anything that changes rendered UI or user-facing interaction: components under src/components/**, hooks under src/hooks/**, src/lib/** helpers that affect rendering, or Tauri commands under src-tauri/src/commands/** and src-tauri/src/core/** that back a UI flow. Do this before telling the user the change is done. A PostToolUse hook (.claude/hooks/post-edit-app-qa.sh) injects a reminder for exactly this case — treat that reminder as the trigger to run this skill, not just a suggestion.

5 Updated today
treq-dev