Argus
Argus
由 AI 驱动的探索性 QA 代理。 给它一个 URL,它会像真实用户一样探索你的应用——点击按钮、填写表单、尝试边缘情况——并发现脚本测试所遗漏的 Bug。
与 Playwright 或 Cypress 不同,你无需编写测试脚本。Argus 能发现你未曾想到要测试的 Bug。
核心功能:自动验证
Argus 的杀手级功能:每个操作都会被自动验证。 当你删除一个项目并看到“已删除!”时,Argus 会刷新页面以检查它是否真的消失了。当你编辑并保存时,Argus 会验证新值是否已持久化。没有其他测试工具能自动做到这一点。
test_form({"email": "test@test.com", "password": "wrong"}, expected_result="validation_error")
→ UNEXPECTED — form accepted input that should have been rejected
(Auth bypass: any credentials accepted)test_crud(create_url="/tasks/new", list_url="/tasks", item_data={"title": "Buy milk"})
→ CREATE: [OK] item created and found on list
EDIT: [BUG] "Buy milk (edited)" not found — edit did not persist!
DELETE: [BUG] item still present after refresh — delete is fake!快速入门(用于 Claude Code 的 MCP 服务器)
Claude Code 成为 AI 大脑——无需 API 密钥。
pip install argus-testing
playwright install chromium
claude mcp add argus -- argus-mcp然后在 Claude Code 中输入:
"Test my app at http://localhost:3000, focus on the checkout flow"
MCP 工具 (18)
复合工具(核心——每次调用执行更多操作):
工具 | 功能 |
| 点击 + 自动捕获前后状态 + 对比 + 检测 Bug |
| 填写表单 + 提交 + 验证成功/失败 + 检测 Bug |
| 完整的创建/编辑/删除循环,每一步均自动验证 |
扫描工具:
工具 | 功能 |
| 自动爬取整个站点,在每个页面上运行所有检测器 |
| 爬取内部链接,查找 404/5xx 错误 |
| 测量加载时间,查找大型资源 |
底层工具(用于边缘情况):
工具 | 功能 |
| 启动/关闭浏览器,生成报告 |
| 查看元素 + 页面文本 + 计数 + 提示信息 + 元数据 + 可访问性 |
| 直接交互 |
| 捕获当前页面 |
| 运行所有 12 种被动检测器 |
| 手动验证删除/编辑的持久性 |
它能检测什么(16 种类型)
类别 | 检测内容 |
逻辑 Bug | 虚假删除/编辑(显示成功但数据未持久化)、误导性的提示信息 |
运行时错误 | 控制台异常、HTTP 4xx/5xx、崩溃 |
数据问题 | 计数不匹配、日期损坏、NaN、永久的“加载中...” |
死链 | 爬取所有内部链接,查找 404 和 5xx |
损坏的图片 | 加载失败的图片 |
SEO | 缺失元描述、OG 标签、标题层级 |
可访问性 | 缺失 alt 文本、未标记的输入框、无 lang 属性 |
性能 | 加载缓慢 (>3s)、大型资源 (>500KB)、请求过多 |
安全性 | 混合内容 (HTTPS 页面中的 HTTP)、XSS 反射 |
测试对象
站点 | 类型 | 结果 |
React.dev | Next.js SPA | 2 个 Bug (可访问性) |
Angular.dev | Angular SPA | 1 个 Bug (可访问性) |
Vue.js | Vitepress SPA | 1 个 Bug (可访问性) |
TodoMVC Svelte | Svelte SPA | 2 个 Bug (SEO, 可访问性) |
Tailwind CSS | Next.js | 9 个 Bug (可访问性, 性能, 大型资源) |
Hacker News | 静态 | 5 个 Bug (SEO, 可访问性) |
citymedicalaesthetics.com | 静态 | 8 个 Bug (死链, 404 图片, SEO) |
httpbin.org | 静态 | 5 个 Bug (SEO, 可访问性) |
BuggyTasks (测试应用) | Starlette | 15+ 个 Bug (虚假 CRUD, 绕过认证, 日期损坏) |
在所有测试站点中零误报。
替代方案:独立 CLI
pip install argus-testing
playwright install chromium
export DEEPSEEK_API_KEY=sk-...
argus http://localhost:3000 --model deepseek/deepseek-chat -n 50通过 LiteLLM 支持 100 多种模型。
要求
Python 3.10+
Chromium (通过
playwright install chromium自动安装)
许可证
MIT
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/chriswu727/argus'
If you have feedback or need assistance with the MCP directory API, please join our Discord server