展示 HN: Argus,针对代码代理比 QA 更快的团队的主动 QA
AI 代理像真实用户一样测试您的 UI — 无需编写脚本,无需维护选择器。Argus 是一个视觉 UI 测试代理。描述一个测试,将其指向一个 HTTP(S) 页面,观看它在一个独立的 Playwright 浏览器上下文中检查页面。运行、时间线、截图参考和结构化报告会自动捕获。Argus 找到您没有编写测试的错误。将其指向一个页面,描述“正常工作”是什么样子,一个自主代理会像真实用户一样探索您的 UI — 点击、输入、滚动 — 然后给您一个结构化报告,其中包含屏幕截图和时间线。无需维护测试脚本,无需照看不稳定的选择器。主动,而非脚本化 — 代理会推理页面并自我适应,而不是重放固定的脚本。适合您的技术栈 — 基于 Playwright 构建,可用于本地和私有网络应用。零设置准备 — 几分钟内即可开始测试。使用托管平台。运行 Argus 的最快方式:无需安装、无需管理 API 密钥、无需自托管。立即开始访问 argustest.com。多代理管道,一次运行不是单一的模型调用,而是五个代理之间的交接,您可以在实时运行视图中看到每一个代理的工作情况:验证者 — 在运行开始之前检查目标 URL 和测试描述是否实际可测试。理解者 — 读取测试描述并将其拆分为独特的测试用例。探索者 — 首先爬取应用,绘制页面和可用操作的映射。策略师 — 将地图和测试用例转化为具体的逐步计划。执行者 — 在真实浏览器中运行计划:浏览、输入、点击,并在过程中确认结果。没有什么是在黑匣子中发生的 — 每个代理在工作时会直播其推理,直到个别操作,例如“导航到 /companies”或“确认页面上有‘Airbnb’”,因此您可以看到应用被映射、计划被构建和测试被执行的实时情况。Argus 里面的示例,一个测试只是一个意图的描述 — Argus 负责弄清楚如何与页面进行交互。举例来说,指向 Y Combinator的网站:目标:https://www.ycombinator.com 测试创业公司目录。1. 从主页导航到公司/创业目录。2. 按名称搜索一个知名的 YC 公司(例如“Airbnb”),并确认它出现在结果中。3. 按特定批次过滤目录(例如“2024年冬季”)并确认列出的公司更新以匹配。4. 从结果中打开一个公司的个人资料,并确认其名称、一行描述、批次和网站链接均正确显示。5. 返回目录并确认搜索/过滤状态按预期表现 — 无论是保留还是重置,取决于页面的设计。6. 将视口调整为 375 像素宽,并确认导航收缩为移动菜单,目录列表保持可滚动且可用,没有重叠的元素。如果搜索结果中没有已知公司,批次过滤没有实际过滤列表,公司资料缺少预期字段,或移动布局出现问题,则测试失败。Argus 像人一样运行这个过程 — 点击浏览流程,阅读页面来判断成功或失败 — 并返回时间线、每一步的截图以及通过其推理得出的合格/不合格报告。自己运行一下。Argus 源代码可用并完全支持本地优先 — SQLite 存储,无遥测,您的数据和截图从不离开您的机器。更喜欢自托管?请按照以下步骤操作:要求:Python 3.11+,uv 和 Node.js 20.19+ 或 22.12+。用于真实运行的 Gemini API 密钥。以本地方式运行:cp .env.example .env # 在 .env 中设置 GEMINI_API_KEY。uv sync --dev。uv run playwright install chromium。cd frontend && npm install && npm run build && cd ..。uv run uvicorn argus.app:app --reload --env-file .env。打开 http://localhost:8000。要进行前端热重载,请在 frontend/ 中与 Uvicorn 一起运行 npm run dev,并打开 http://localhost:5173。配置仅限于环境:变量 默认 目的 GEMINI_API_KEY — 真实执行所需 GEMINI_MODEL gemini-2.5-flash Gemini REST 模型 ARGUS_DATA_DIR data SQLite 和截图目录 ARGUS_HEADLESS true Playwright 浏览器模式 ARGUS_RUN_TIMEOUT 300 运行超时(秒)Argus 接受常规 HTTP(S) 目标,包括受信任的 localhost 和私有网络应用。它拒绝目标 URL 中的凭据和敏感查询参数,并且永远不会存储提供程序秘密、输入的浏览器值或检查页面内容。设置屏幕仅显示提供程序配置是否存在。Docker cp .env.example .env # 在 .env 中设置 GEMINI_API_KEY docker compose up --build。用户界面可在 http://localhost:8000 上访问,持久数据写入 ./data。开发检查:uv run pytest。uv run ruff check argus tests。uv run pyright argus tests。cd frontend && npm run typecheck && npm run lint && npm run build。架构:argus/runtime:提供者中立代理、消息、工具和会话边界 argus/providers/gemini.py:ra
本站免费、广告极少。如果觉得有帮助,可以请我们喝杯咖啡 —— 任何金额都对持续运营有实际帮助。
☕请我喝杯咖啡