Agent Skills
返回列表
🤖

Bananalyzer 浏览器代理评测套件

AI Agent 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/benchmark-browser-agents-on-repeatable-playwright-web-tasks-with-bananalyzer

技能介绍

解决什么问题

浏览器代理的能力评测长期存在一个痛点:很多团队用一次性演示或交互式测试来判断代理水平,这类测试受页面状态、网络抖动和人工干预影响,结果很难复现。当你想比较两个代理的真实差异时,会发现昨天能跑通的任务今天突然失败,无法判断是代理退化还是环境变化。

更关键的是,这类测试往往只在演示用的网站上进行,无法反映代理在陌生站点上的泛化能力。一个在特定页面上表现优异的代理,换到结构类似但细节不同的网站时,可能完全失效,而这种失效在一次性测试中很难提前发现。

它如何工作

Bananalyzer 的核心思路是用可重复的任务快照替代交互式演示。它针对静态网页任务快照进行评估,而不是通过实时浏览或人工引导的方式测试代理。

具体来说,它包含几个关键组件:

  • 动态构建 pytest 测试套件:CLI 工具会根据用户定义的代理和示例任务,自动生成一组 pytest 测试用例,确保每次运行的任务条件完全一致
  • AgentRunner 接口:提供统一的代理运行入口,暴露一个示例和一个要使用的 Playwright 浏览器上下文,方便接入不同类型的代理实现
  • 静态任务快照:所有评估都在预先准备好的网页快照上进行,避免了实时网络请求带来的不确定性,保证评估的可重复性

运行时,CLI 会依次对每个代理运行这套测试,通过 pytest 的输出判断代理是否完成指定任务,比如表单填写、信息提取或按钮点击等。

适用边界

目前这个方案还有几个明显的限制:

  • 仅支持单个网站:当前的数据集只覆盖单个网站的任务,无法有效评估代理在不同网站结构下的泛化能力
  • 任务复杂度有限:暂时不支持需要多步骤完成的复杂任务,评估场景相对简单
  • 依赖环境配置:需要提前准备 Python 环境、Playwright 浏览器运行时和自定义的 AgentRunner 实现,有一定接入成本

另外,由于使用静态快照,它无法评估代理在动态页面或需要实时交互场景下的表现。如果你的任务依赖实时数据更新或用户行为模拟,这个工具可能不适合。

使用场景

  • 团队需要比较不同浏览器代理在表单填写任务上的表现,用Bananalyzer生成pytest套件在静态页面快照上运行,得到可复现的对比结果
  • 开发浏览器代理时,需验证其在信息提取任务中的稳定性,通过Bananalyzer的静态任务快照确保每次测试条件一致,排除环境干扰
  • 评估代理在按钮点击任务上的泛化能力,使用Bananalyzer在预设的网页快照上执行pytest测试,观察代理对不同页面结构的反应
  • 优化浏览器代理前,需建立基准测试集,通过Bananalyzer生成动态pytest套件,在固定网页任务上记录代理的当前表现

适合人员

  • AI工程师:需要评估浏览器代理在固定网页任务上的执行稳定性与成功率
  • 自动化测试开发者:想要构建浏览器代理的可重复测试用例,避免环境波动影响结果
  • 浏览器工具维护者:需要比较不同代理实现在同一任务上的性能差异,指导迭代方向
  • AI研究团队成员:需在受控环境中验证浏览器代理的泛化能力,排除无关变量干扰