scoutqa-test by github/awesome-copilot
npx skills add https://github.com/github/awesome-copilot --skill scoutqa-test使用 scoutqa CLI 对 Web 应用程序执行 AI 驱动的探索性测试。
将 ScoutQA 视为一个智能测试伙伴,它可以自主探索、发现问题并验证功能。将测试任务委托给多个并行的 ScoutQA 执行实例,以最大化覆盖率,同时节省时间。
在以下两种场景中使用此技能:
主动使用的例子:
最佳实践:当你完成一个 Web 功能的实现时,主动在后台启动一个 ScoutQA 测试来验证其是否正常工作,同时你可以继续处理其他任务。
复制此清单并跟踪你的进度:
测试进度:
步骤 1:编写具体的测试提示
请参阅下面的"编写有效的提示"部分以获取指南。
步骤 2:运行 scoutqa 命令
重要:使用 Bash 工具的 timeout 参数(5000ms = 5 秒)来捕获执行详情:
调用 Bash 工具时,将 设置为参数:
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
timeout: 5000这是 Claude Code 中 Bash 工具的内置超时参数(不是 Unix 的 timeout 命令)
5 秒后,Bash 工具返回一个任务 ID,进程继续在后台运行
这与 Unix 的 timeout 不同,后者会终止进程 - 在这里进程会继续运行
前 5 秒用于从 ScoutQA 的输出中捕获执行 ID 和浏览器 URL
测试继续在 ScoutQA 的基础设施上远程运行,作为后台任务
scoutqa --url "https://example.com" --prompt "Your test instructions"
在最初的几秒钟内,命令将输出:
019b831d-xxx)https://app.scoutqa.ai/t/019b831d-xxx)5 秒超时后,Bash 工具返回一个任务 ID,命令继续在后台运行。你可以在测试运行时处理其他任务。超时仅用于捕获初始输出(执行 ID 和浏览器 URL)- 测试会继续在本地作为后台任务运行,同时也在 ScoutQA 的基础设施上远程运行。
步骤 3:告知用户执行 ID 和浏览器 URL
在 Bash 工具返回任务 ID 后(已在最初的 5 秒内捕获了执行详情),告知用户:
测试继续在后台运行,同时你可以继续其他工作。
步骤 4:提取并分析结果
请参阅下面的"呈现结果"部分以获取完整格式。
--url(必需):要测试的网站 URL(支持 localhost / 127.0.0.1)--prompt(必需):自然语言测试指令--project-id(可选):与项目关联以便跟踪-v, --verbose(可选):显示所有工具调用,包括内部调用ScoutQA 支持自主测试 localhost 和 127.0.0.1 URL — 无需手动设置。
# 当你开发应用时,无缝测试本地运行的应用
scoutqa --url "http://localhost:3000" --prompt "Test the registration form"
开始新测试? → 使用 scoutqa --url --prompt
验证已知问题? → 使用 scoutqa issue-verify --issue-id <id>
从执行中查找问题 ID? → 使用 scoutqa list-issues --execution-id <id>
代理需要更多上下文? → 使用 scoutqa send-message(参见"跟进卡住的执行")
专注于要探索和验证什么,而不是规定性的步骤。ScoutQA 会自主决定如何测试。
示例:用户注册流程
scoutqa --url "https://example.com" --prompt "
Explore the user registration flow. Test form validation edge cases,
verify error handling, and check accessibility compliance.
"
示例:电子商务结账
scoutqa --url "https://shop.example.com" --prompt "
Test the checkout flow. Verify pricing calculations, cart persistence,
payment options, and mobile responsiveness.
"
示例:运行并行测试以实现全面覆盖
通过在一个消息中发起多个 Bash 工具调用来并行启动多个测试,每个调用都将 Bash 工具的 timeout 参数设置为 5000(毫秒):
# Test 1: Authentication & security
scoutqa --url "https://app.example.com" --prompt "
Explore authentication: login/logout, session handling, password reset,
and security edge cases.
"
# Test 2: Core features (runs in parallel)
scoutqa --url "https://app.example.com" --prompt "
Test dashboard and main user workflows. Verify data loading,
CRUD operations, and search functionality.
"
# Test 3: Accessibility (runs in parallel)
scoutqa --url "https://app.example.com" --prompt "
Conduct accessibility audit: WCAG compliance, keyboard navigation,
screen reader support, color contrast.
"
实现:发送一条包含三个 Bash 工具调用的消息。对于每个 Bash 工具调用,将 timeout 参数设置为 5000 毫秒。5 秒后,每个 Bash 调用返回一个任务 ID,同时进程继续在后台运行。这从每个测试的初始输出中捕获执行 ID 和浏览器 URL,然后所有三个测试继续并行运行(既在本地作为后台任务,也在 ScoutQA 的基础设施上远程运行)。
关键指南:
timeout 参数设置为 5000 毫秒(这会在 5 秒后返回控制权,同时进程在后台继续)部署后冒烟测试:
scoutqa --url "$URL" --prompt "
Smoke test: verify critical functionality works after deployment.
Check homepage, navigation, login/logout, and key user flows.
"
无障碍审计:
scoutqa --url "$URL" --prompt "
Audit accessibility: WCAG 2.1 AA compliance, keyboard navigation,
screen reader support, color contrast, and semantic HTML.
"
电子商务测试:
scoutqa --url "$URL" --prompt "
Explore e-commerce functionality: product search/filtering,
cart operations, checkout flow, and pricing calculations.
"
SaaS 应用程序:
scoutqa --url "$URL" --prompt "
Test SaaS app: authentication, dashboard, CRUD operations,
permissions, and data integrity.
"
表单验证:
scoutqa --url "$URL" --prompt "
Test form validation: edge cases, error handling, required fields,
format validation, and successful submission.
"
移动端响应式:
scoutqa --url "$URL" --prompt "
Check mobile experience: responsive layout, navigation,
touch interactions, and viewport behavior.
"
验证已知问题:
# First, find issue IDs from a previous execution
scoutqa list-issues --execution-id <executionId>
# Then verify the issue (creates a new verification execution automatically)
scoutqa issue-verify --issue-id <issueId>
issue-verify 命令将:
功能验证(实现后):
scoutqa --url "$URL" --prompt "
Verify the new [feature name] works correctly. Test core functionality,
edge cases, error handling, and integration with existing features.
"
示例:编码功能后的主动测试
在实现用户注册表单后,自动验证其是否正常工作:
scoutqa --url "http://localhost:3000/register" --prompt "
Test the newly implemented registration form. Verify:
- Form validation (email format, password strength, required fields)
- Error messages display correctly
- Successful registration flow
- Edge cases (duplicate emails, special characters, etc.)
"
这可以在实现上下文还清晰时立即发现问题。
使用 scoutqa list-issues 浏览在先前执行中发现的问题。这对于查找要与 issue-verify 一起使用的问题 ID 很有用。
scoutqa list-issues --execution-id <executionId>
选项:
--execution-id(必需):执行 ID(来自 /t/<executionId> URL 或 CLI 输出)示例输出:
Showing 3 issues:
🔴 019c-abc1
Login button unresponsive on mobile
Severity: critical | Category: usability | Status: open
🟠 019c-abc2
Missing form validation on email field
Severity: high | Category: functional | Status: open
🟡 019c-abc3
Color contrast insufficient on footer links
Severity: medium | Category: accessibility | Status: resolved
运行 scoutqa 命令后,立即向用户呈现执行详情:
**ScoutQA 测试已启动**
执行 ID:`019b831d-xxx`
实时查看:https://app.scoutqa.ai/t/019b831d-xxx
测试正在远程运行。你可以在上面的链接中查看实时进度,同时我继续处理其他任务。
当执行完成时,使用此格式呈现发现的问题:
**ScoutQA 测试结果**
执行 ID:`ex_abc123`
**发现的问题:**
[高] 无障碍:徽标图像缺少替代文本
- 影响:屏幕阅读器无法描述徽标
- 位置:页眉导航
[中] 可用性:移动视口中提交按钮不可见
- 影响:用户无法在移动设备上完成表单
- 位置:联系表单,页面底部
[低] 功能:搜索对有效查询无结果
- 影响:搜索功能似乎已损坏
- 位置:主搜索栏
**摘要:** 在无障碍、可用性和功能类别中发现了 3 个问题。完整的交互式报告(含截图)请访问上面的 URL。
始终包含:
ex_abc123)以供参考如果远程代理卡住或需要澄清,使用 send-message 继续:
# 示例:代理在登录处卡住,用户提供凭据
scoutqa send-message --execution-id ex_abc123 --prompt "
Use these test credentials: username: testuser@example.com, password: TestPass123
"
# 示例:代理询问接下来测试哪个流程
scoutqa send-message --execution-id ex_abc123 --prompt "
Focus on the checkout flow next, skip the wishlist feature
"
ScoutQA 测试在 ScoutQA 的基础设施上远程运行。启动一个带有短暂超时以捕获执行 ID 的测试后:
scoutqa get-execution --execution-id <id> 通过 CLI 获取结果最佳实践:通过将 Bash 工具的 timeout 参数设置为 5000 毫秒来启动测试。5 秒后,Bash 工具返回控制权并附带一个任务 ID 和执行详情(执行 ID 和浏览器 URL),同时测试继续在后台运行。然后你可以继续其他工作,并在需要时通过 ScoutQA 网站或 CLI 检查结果。
| 问题 | 解决方案 |
|---|---|
command not found: scoutqa | 安装 CLI:npm i -g @scoutqa/cli@latest |
| 身份验证过期 / 未授权 | 运行 scoutqa auth login |
| 测试挂起或需要输入 | 使用 scoutqa send-message --execution-id |
| 检查测试结果 | 访问浏览器 URL 或运行 scoutqa get-execution --execution-id |
| 需要问题 ID 进行验证 | 运行 scoutqa list-issues --execution-id <id> |
每周安装量
7.6K
代码仓库
GitHub 星标数
26.7K
首次出现
Jan 28, 2026
安全审计
安装于
codex7.4K
gemini-cli7.4K
opencode7.4K
github-copilot7.4K
cursor7.4K
kimi-cli7.4K
Perform AI-powered exploratory testing on web applications using the scoutqa CLI.
Think of ScoutQA as an intelligent testing partner that can autonomously explore, discover issues, and verify features. Delegate testing to multiple parallel ScoutQA executions to maximize coverage while saving time.
Use this skill in two scenarios:
Example proactive usage:
Best practice : When you finish implementing a web feature, proactively start a ScoutQA test in the background to verify it works while you continue with other tasks.
Copy this checklist and track your progress:
Testing Progress:
Step 1: Write specific test prompt
See "Writing Effective Prompts" section below for guidelines.
Step 2: Run scoutqa command
IMPORTANT : Use the Bash tool's timeout parameter (5000ms = 5 seconds) to capture execution details:
When calling the Bash tool, set timeout: 5000 as a parameter:
This is the Bash tool's built-in timeout parameter in Claude Code (NOT the Unix timeout command)
After 5 seconds, the Bash tool returns control with a task ID and the process continues running in the background
This is different from Unix timeout which kills the process - here the process keeps running
The first 5 seconds capture the execution ID and browser URL from ScoutQA's output
The test continues running remotely on ScoutQA's infrastructure with the background task
scoutqa --url "https://example.com" --prompt "Your test instructions"
In the first few seconds, the command will output:
019b831d-xxx)https://app.scoutqa.ai/t/019b831d-xxx)After the 5-second timeout, the Bash tool returns a task ID and the command continues running in the background. You can work on other tasks while the test runs. The timeout is only to capture the initial output (execution ID and browser URL) - the test keeps running both locally as a background task and remotely on ScoutQA's infrastructure.
Step 3: Inform user of execution ID and browser URL
After the Bash tool returns with the task ID (having captured the execution details in the first 5 seconds), inform the user of:
The test continues running in the background while you continue other work.
Step 4: Extract and analyze results
See "Presenting Results" section below for the complete format.
--url (required): Website URL to test (supports localhost / 127.0.0.1)--prompt (required): Natural language testing instructions--project-id (optional): Associate with a project for tracking-v, --verbose (optional): Show all tool calls including internal onesScoutQA supports testing localhost and 127.0.0.1 URLs autonomously — no manual setup required.
# Seamlessly test a locally running app when you're developing your app
scoutqa --url "http://localhost:3000" --prompt "Test the registration form"
Starting a new test? → Use scoutqa --url --prompt Verifying a known issue? → Use scoutqa issue-verify --issue-id <id> Finding issue IDs from an execution? → Use scoutqa list-issues --execution-id <id> Agent needs more context? → Use scoutqa send-message (see "Following Up on Stuck Executions")
Focus on what to explore and verify , not prescriptive steps. ScoutQA autonomously determines how to test.
Example: User registration flow
scoutqa --url "https://example.com" --prompt "
Explore the user registration flow. Test form validation edge cases,
verify error handling, and check accessibility compliance.
"
Example: E-commerce checkout
scoutqa --url "https://shop.example.com" --prompt "
Test the checkout flow. Verify pricing calculations, cart persistence,
payment options, and mobile responsiveness.
"
Example: Running parallel tests for comprehensive coverage
Launch multiple tests in parallel by making multiple Bash tool calls in a single message, each with the Bash tool's timeout parameter set to 5000 (milliseconds):
# Test 1: Authentication & security
scoutqa --url "https://app.example.com" --prompt "
Explore authentication: login/logout, session handling, password reset,
and security edge cases.
"
# Test 2: Core features (runs in parallel)
scoutqa --url "https://app.example.com" --prompt "
Test dashboard and main user workflows. Verify data loading,
CRUD operations, and search functionality.
"
# Test 3: Accessibility (runs in parallel)
scoutqa --url "https://app.example.com" --prompt "
Conduct accessibility audit: WCAG compliance, keyboard navigation,
screen reader support, color contrast.
"
Implementation : Send a single message with three Bash tool calls. For each Bash tool invocation, set the timeout parameter to 5000 milliseconds. After 5 seconds, each Bash call returns with a task ID while the processes continue running in the background. This captures the execution ID and browser URL from each test in the initial output, then all three continue running in parallel (both as background tasks locally and remotely on ScoutQA's infrastructure).
Key guidelines:
timeout parameter to 5000 milliseconds when calling scoutqa commands (this returns control after 5 seconds while the process continues in the background)Post-deployment smoke test:
scoutqa --url "$URL" --prompt "
Smoke test: verify critical functionality works after deployment.
Check homepage, navigation, login/logout, and key user flows.
"
Accessibility audit:
scoutqa --url "$URL" --prompt "
Audit accessibility: WCAG 2.1 AA compliance, keyboard navigation,
screen reader support, color contrast, and semantic HTML.
"
E-commerce testing:
scoutqa --url "$URL" --prompt "
Explore e-commerce functionality: product search/filtering,
cart operations, checkout flow, and pricing calculations.
"
SaaS application:
scoutqa --url "$URL" --prompt "
Test SaaS app: authentication, dashboard, CRUD operations,
permissions, and data integrity.
"
Form validation:
scoutqa --url "$URL" --prompt "
Test form validation: edge cases, error handling, required fields,
format validation, and successful submission.
"
Mobile responsiveness:
scoutqa --url "$URL" --prompt "
Check mobile experience: responsive layout, navigation,
touch interactions, and viewport behavior.
"
Verification of a known issue:
# First, find issue IDs from a previous execution
scoutqa list-issues --execution-id <executionId>
# Then verify the issue (creates a new verification execution automatically)
scoutqa issue-verify --issue-id <issueId>
The issue-verify command will:
Feature verification (after implementation):
scoutqa --url "$URL" --prompt "
Verify the new [feature name] works correctly. Test core functionality,
edge cases, error handling, and integration with existing features.
"
Example: Proactive testing after coding a feature
After implementing a user registration form, automatically verify it works:
scoutqa --url "http://localhost:3000/register" --prompt "
Test the newly implemented registration form. Verify:
- Form validation (email format, password strength, required fields)
- Error messages display correctly
- Successful registration flow
- Edge cases (duplicate emails, special characters, etc.)
"
This catches issues immediately while the implementation is fresh in context.
Use scoutqa list-issues to browse issues found in a previous execution. This is useful for finding issue IDs to use with issue-verify.
scoutqa list-issues --execution-id <executionId>
Options:
--execution-id (required): Execution ID (from the /t/<executionId> URL or CLI output)Example output:
Showing 3 issues:
🔴 019c-abc1
Login button unresponsive on mobile
Severity: critical | Category: usability | Status: open
🟠 019c-abc2
Missing form validation on email field
Severity: high | Category: functional | Status: open
🟡 019c-abc3
Color contrast insufficient on footer links
Severity: medium | Category: accessibility | Status: resolved
Right after running the scoutqa command, present the execution details to the user:
**ScoutQA Test Started**
Execution ID: `019b831d-xxx`
View Live: https://app.scoutqa.ai/t/019b831d-xxx
The test is running remotely. You can view real-time progress in your browser at the link above while I continue with other tasks.
When the execution completes, use this format to present findings:
**ScoutQA Test Results**
Execution ID: `ex_abc123`
**Issues Found:**
[High] Accessibility: Missing alt text on logo image
- Impact: Screen readers cannot describe the logo
- Location: Header navigation
[Medium] Usability: Submit button not visible on mobile viewport
- Impact: Users cannot complete form on mobile devices
- Location: Contact form, bottom of page
[Low] Functional: Search returns no results for valid queries
- Impact: Search feature appears broken
- Location: Main search bar
**Summary:** Found 3 issues across accessibility, usability, and functional categories. See full interactive report with screenshots at the URL above.
Always include:
ex_abc123) for referenceIf the remote agent gets stuck or needs clarification, use send-message to continue:
# Example: Agent is stuck at login, user provides credentials
scoutqa send-message --execution-id ex_abc123 --prompt "
Use these test credentials: username: testuser@example.com, password: TestPass123
"
# Example: Agent asks which flow to test next
scoutqa send-message --execution-id ex_abc123 --prompt "
Focus on the checkout flow next, skip the wishlist feature
"
ScoutQA tests run remotely on ScoutQA's infrastructure. After starting a test with a short timeout to capture the execution ID:
scoutqa get-execution --execution-id <id> to fetch results via CLIBest practice : Start tests by setting the Bash tool's timeout parameter to 5000 milliseconds. After 5 seconds, the Bash tool returns control with a task ID and the execution details (execution ID and browser URL) while the test continues running in the background. You can then continue other work and check results on ScoutQA's website or via CLI when needed.
| Issue | Solution |
|---|---|
command not found: scoutqa | Install CLI: npm i -g @scoutqa/cli@latest |
| Auth expired / unauthorized | Run scoutqa auth login |
| Test hangs or needs input | Use scoutqa send-message --execution-id |
| Check test results | Visit browser URL or scoutqa get-execution --execution-id |
| Need issue ID for verification | Run scoutqa list-issues --execution-id <id> |
Weekly Installs
7.6K
Repository
GitHub Stars
26.7K
First Seen
Jan 28, 2026
Security Audits
Gen Agent Trust HubWarnSocketWarnSnykFail
Installed on
codex7.4K
gemini-cli7.4K
opencode7.4K
github-copilot7.4K
cursor7.4K
kimi-cli7.4K
97,600 周安装