Token导航 LogoToken导航TokenDH.com
研究检索操作浏览器github未标认证来源可访问clear审计未展示

bench-test-suite台架测试套件

Agent Skill

用于辅助测试设计、自动化测试、用例整理和回归验证。它适合让 Agent 编写单元测试、端到端测试、测试计划或根据失败日志定位问题。使用时需要确认项目测试框架、运行命令和夹具数据,避免为了通过测试而改坏真实逻辑;涉及浏览器或外部服务时,应区分本地模拟、测试环境和生产环境。

总安装

441

周安装

18

GitHub Stars

公开资料未说明

下载量

141
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:bench-test-suite(台架测试套件)
来源仓库:https://github.com/itsjavi/vani
仓库路径:skills/bench-test-suite
安装命令:
npx skills add itsjavi/vani --skill "bench-test-suite"
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

AgentSkills.tonpx skills
npx skills add itsjavi/vani --skill "bench-test-suite"

简介

bench-test-suite 用于辅助测试设计、自动化测试、用例整理和回归验证,适合让 Agent 编写单元测试或端到端测试。

  • 适用于软件开发中的测试框架搭建、测试计划制定、失败日志分析等质量保障场景。
  • 通过 npx skills add itsjavi/vani --skill "bench-test-suite" 命令安装,需结合原始 README 核验具体用法。
  • 使用时需要确认项目测试框架、运行命令和夹具数据,避免为了通过测试而改坏真实逻辑。
  • 可结合来源仓库 https://github.com/itsjavi/vani/tree/main/skills/bench-test-suite 继续核验具体用法。

SKILL.md

name
bench-test-suite
description

Bench Test Suite

When to Use

  • Adding a new benchmark view/test suite (like datatable or pokeboxes)
  • Extending the Playwright runner with new view operations
  • Making UI test results show up in the snapshot UI

Workflow

  1. Define the view id and ready selector

- Pick a lowercase view id (used in ?view=). - Decide the first stable selector that signals the view is ready.

  1. Add the blueprint markup

- Create bench/frameworks/blueprint-<view>.html. - The initial DOM must match every framework’s initial render (preflight compares against it). - Reuse the view toggle markup and IDs used by existing blueprints.

  1. Update the benchmark runner

- Add the view id to OperationView, AVAILABLE_VIEWS, and BLUEPRINTS. - Add a resolveViewReadySelector branch for the new view. - Add new Operation entries that set view: '<view>' and readySelector.

  1. Add shared operations/data helpers

- Add new helpers in bench/frameworks/shared.js. - Add matching types and exports in bench/frameworks/shared.d.ts.

  1. Update framework implementations

- Each framework must render the same initial markup as the blueprint for the new view. - Parse ?view= and render the correct view. - Add view toggle buttons and ensure they link to the correct view query param. - Use design system classes from bench/src/design-system.css (max 3 classes per element).

  1. Expose the suite in results UI

- Add human-friendly labels for new operations in bench/snapshot/index.ts. - Add the new view to suiteOrder and suiteTitles.

  1. Run UI tests and generate results

- Run the runner with preflight to validate markup and measure timings. - Open the snapshot UI to verify the new suite is visible.

Templates

bench/runner.ts additions

// 1) View type + constants
type OperationView = 'datatable' | 'pokeboxes' | '<view>'

const BLUEPRINTS = {
  datatable: path.join(import.meta.dirname, 'frameworks/blueprint-datatable.html'),
  pokeboxes: path.join(import.meta.dirname, 'frameworks/blueprint-pokeboxes.html'),
  <view>: path.join(import.meta.dirname, 'frameworks/blueprint-<view>.html'),
}

const AVAILABLE_VIEWS: OperationView[] = ['datatable', 'pokeboxes', '<view>']

function resolveViewReadySelector(view: OperationView): string {
  if (view === 'pokeboxes') return '#append40'
  if (view === '<view>') return '#<ready-id>'
  return '#run'
}

// 2) New operations
const operations: Operation[] = [
  // ...
  {
    name: '<operationName>',
    view: '<view>',
    readySelector: '#<ready-id>',
    setup: (page) => /* optional */,
    action: (page) => clickAndMeasure(page, '#<action-id>', '<operationName>'),
    teardown: (page) => /* optional */,
  },
]

bench/frameworks/blueprint-<view>.html

<!-- Match initial DOM for *all* frameworks -->
<div class="bench-view-toggle" id="view-toggle">
  <!-- include one button per view (datatable/pokeboxes/<view>) -->
</div>

<!-- New view DOM should be here with stable IDs -->

bench/frameworks/shared.js + bench/frameworks/shared.d.ts

// shared.js (helpers used by all frameworks)
export function build<Thing>(/* params */) {
  // deterministic data helpers for the new view
}

export function <operationHelper>(/* params */) {
  // pure data operation (no DOM)
}
// shared.d.ts (types + function declarations)
export type <Thing> = {
  // ...
}

export declare function build<Thing>(/* params */): <Thing>[]
export declare function <operationHelper>(/* params */): <Thing>[]

Framework view routing (each bench/frameworks/*/index.ts[x]|index.js)

const resolveView = () => {
  const params = new URLSearchParams(window.location.search)
  return params.get('view') === '<view>' ? '<view>' : 'datatable'
}

const navigateToView = (view: string) => {
  const url = new URL(window.location.href)
  url.searchParams.set('view', view)
  window.location.href = url.toString()
}

// Render toggle buttons + new view

bench/snapshot/index.ts updates

const OPERATION_LABELS = {
  // ...
  <operationName>: {
    title: '<human title>',
    description: '<what it measures>',
  },
}

let suiteOrder = ['datatable', 'pokeboxes', '<view>']
let suiteTitles: Record<string, string> = {
  datatable: 'Data Table',
  pokeboxes: 'Pokeboxes',
  <view>: '<View Title>',
}

Commands

  • Run the full benchmark suite:

- pnpm --filter benchmarks bench (or pnpm run bench from bench/)

  • Run only the new view:

- pnpm --filter benchmarks bench -- --view <view>

  • Validate markup only (preflight):

- pnpm --filter benchmarks bench -- --preflight-only --view <view>

  • View results UI:

- pnpm --filter benchmarks dev → open http://localhost:4555/snapshot

Notes

  • Preflight DOM checks compare each framework against the blueprint for every view.
  • If you add new helpers or data shapes, update bench/frameworks/shared.js and

bench/frameworks/shared.d.ts.

  • Keep button IDs and aria attributes aligned across all frameworks and blueprints.

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

04

需要参考平台分布和安装热度时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Claude Code

27.5%
按下载量换算39

windsurf

24.83%
按下载量换算35

trae

16.32%
按下载量换算23

OpenCode

11.32%
按下载量换算16

Codex

7.96%
按下载量换算11

Antigravity

3.66%
按下载量换算5

安全审计

暂无安全审计结果可展示。

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills