@buoy-gg/scenarios

中文文档
7.0.87发布于 2026/11/07TypeScriptESM + CJS近 30 天下载 2559

情景 - 已保存,参数化的一塔普应用程序状态(网络覆盖、存储、冒用、导航),用于 React Independent DevTools

中文使用文档
文档目录6 节
  1. 安装
  2. 账户设置
  3. 定义一个情景
  4. 检查激活和停用
  5. 桌面和MCP
  6. 网络支持(未释放)

@buoy-gg/情景

使用已安装的Buoy工具的动作定义可重复的测试设置 。 一个方案可以配置响应覆盖,编辑存储,选择测试用户,或导航. 在运作之前审查其步骤和预期成果.

安装

npm install @buoy-gg/core @buoy-gg/scenarios @buoy-gg/network @buoy-gg/route-events

账户设置

开始开发建设。 你需要一个免费或ProBuoy账户。 从您的应用程序文件夹中签名 :

npx --package=@buoy-gg/core buoy login

你的浏览器打开了浮标.gg. 点击允许。 然后CLI写下 dev 符号. 它在德夫建筑工作30天.

在博览会, 信使进入 .env.development.localBuoy自己在dev建筑里读的 也可以自己传:

import { Buoy } from "@buoy-gg/core";

Buoy.init({ licenseKey: process.env.EXPO_PUBLIC_BUOY_KEY });

在回放原生CLI时,符号会输入 .env.local 作为 BUOY_KEY。React Industrial不会自己装入文件。 用你的应用软件的套装把信使递过来 将菜单保存在您的应用程序使用的供应商内部 。 安装软件包后重新启动开发服务器 。 见 快速启动 用于完整的根组件.

定义一个情景

这个集成片段假设您的应用程序有一个匹配的菜单端点和 /cart 路线。 调整您的应用程序的 URL 模式、 响应机构、 路由、 并构建标签, 然后在您的现有提供者内部制作此菜单 :

import { FloatingDevTools } from "@buoy-gg/core";
import { defineScenario, createScenariosTool } from "@buoy-gg/scenarios";

const outOfStock = defineScenario({
  id: "oos-item",
  name: "Out-of-stock item at store {{storeId}}",
  expectedOutcome: "Cart shows the item sold out; checkout is blocked.",
  authoredAgainst: "5.4.0",
  vars: [
    { key: "storeId", type: "enum", options: ["100", "220"], default: "100" },
  ],
  steps: [
    { tool: "network", action: "upsertOverrideRule",
      params: { rule: {
        urlPattern: "*/menu/{{storeId}}*", methods: ["GET"],
        kind: "respond", status: 200, body: '{"items":[{"id":"dbl","inStock":false}]}',
      } } },
    { tool: "route-events", action: "navigate", params: { path: "/cart" } },
  ],
});

<FloatingDevTools
  apps={[createScenariosTool({ scenarios: [outOfStock], currentBuild: "5.4.0" })]}
/>

由代码定义的情景只在设备上被读取. 安装和配置每个步骤引用的工具;宣布步骤不会执行该工具的应用集成.

检查激活和停用

预览情景,提供其变量,并解决任何飞行前出错. 在开发构建中运行它,触发受影响的应用请求,并检查预期的屏幕. 解除并证实正常行为回归.

飞行前验证已知要求后方可执行. 运行时间的失败仍然会留下部分效果; 它不是您应用程序和后端的交易 。 审查每一步骤的结果.

脱跑者在停用时支持主动覆盖和冒用效应。 存储写入需要明确的撤销步骤来恢复先前的值 。 被检查者报告了不可逆效应并如活化一样小心地进行了测试清理. 相冲突的情况可能需要替换活动设置;不要假设任意的情况可以一起运行.

远程草稿需要在设备上接受才能运行. 在React Industrial发行架构中,跑者需要付费计划和屏幕上的Buoy菜单. 见 情景指南 用于变量、草稿、预览和撤消步骤.

桌面和MCP

反应原生连接需要 @buoy-gg/external-sync。跟踪 桌面连接指南,然后确认所选设备. MCP 磁共振 使用来自 buoy login 在你的电脑上。 自由拥有基本的MCP. 从MCP读取这个工具需要Pro.

设备数据可以通过您的局域网前往配置的经纪人. 账户验证会提出网络请求. 见 遥测 用于数据流动细节.

网络支持(未释放)

在 FloatingDevTools 模块中注册此软件包的 /web 命名空间, 在浏览器应用程序中使用它共享的面板和动作 。 浏览器构建在此取出中是可用的, 尚未发布 。 见 网络设置指南 用于注册、依赖和浏览器边界.

版本与发布记录

@buoy-gg/scenarios 共发布 13 个版本,首次发布于 2026/10/22;过去 12 个月发布了 13 个版本。

版本发布日期距今
7.0.87latest2026/11/071 天前
7.0.862026/11/062 天前
7.0.852026/11/053 天前
7.0.842026/11/035 天前
7.0.832026/11/035 天前
7.0.822026/11/036 天前

关于 @buoy-gg/scenarios 的常见问题

@buoy-gg/scenarios 是什么?

情景 - 已保存,参数化的一塔普应用程序状态(网络覆盖、存储、冒用、导航),用于 React Independent DevTools

如何安装 @buoy-gg/scenarios?

在项目目录运行 npm install @buoy-gg/scenarios,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:react(*)、@buoy-gg/license(7.0.87)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@buoy-gg/scenarios 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@buoy-gg/scenarios 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@buoy-gg/scenarios 可以商用吗?

@buoy-gg/scenarios 使用 未声明 许可。package.json 没有声明许可证。没有许可证的代码默认保留全部权利,商用前请联系作者或查看仓库中的 LICENSE 文件。以上为概括,不构成法律意见,请以许可原文为准。

@buoy-gg/scenarios 的下载量有多少?

根据 npm 官方下载统计,@buoy-gg/scenarios 在 2026/10/09 – 2026/11/07 这 30 天内被下载 2,559 次,日均约 85 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@buoy-gg/scenarios 还在维护吗?

最新版本 7.0.87 发布于 2026/11/07(1 天前);至今共发布 13 个版本,其中过去 12 个月发布了 13 个;首次发布于 2026/10/22。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。