使用 playbook 模拟器

支持的平台:

playbook 模拟器提供了一种简化的方法,可帮助您以更少的时间和精力开发 playbook。

借助 Playbook 模拟器,您可以利用以下几项主要功能:

  • 在预生产环境中工作,让您能够测试操作并观察结果,而不会影响实时生产数据(尤其是在停用剧本时)。
  • 有助于测试每个单独的 playbook 步骤或块,以确认工作流按预期运行。
  • 测试 playbook 中的所有可能条件分支,确认覆盖范围全面且行为可预测。

将 playbook 模拟器与 playbook 搭配使用

无论您是使用现有 playbook 还是创建新 playbook,都应始终先开启 playbook 模拟器。您会在顶部看到一个绿色指示器,确认该功能已启用。

如果您在有效 playbook 上使用 playbook 模拟器,则会影响触发该 playbook 的所有传入提醒。这是因为保存包含模拟数据的 playbook 会将该数据应用于生产环境中的实际支持请求,这可能会影响实际结果。

  1. 将指针悬停在某个支持服务请求提醒上,依次点击 more_vert 提醒选项,然后选择将提醒作为测试用例提取。此操作会创建一个测试用例,用于运行模拟 playbook。在测试用例中修改的实体不会对常规用例中的实体产生任何影响。
  2. 将指针悬停在 Playbook 页面底部,然后选择一个测试用例。确保所选测试用例与您打算运行的策略方案相匹配。如需确认,请点击实体,并验证 playbook 是否能够处理相应测试用例中存在的实体。
  3. 点击运行。模拟器会处理这些步骤,运行已定义的操作,并提供结果。

解读每个步骤的模拟器结果

点击运行后,控制台中的第一行会显示为实时剧本。每个模拟步骤都会显示一些选项,通常包括案例数据查看结果固定结果(或插入结果)。手动步骤会提示一个按钮来输入参数、提供回答和执行步骤。

案例数据

案例数据图标会打开一个对话框,以显示该特定阶段(即当前操作运行完毕后)的案例信息。此对话框会根据当前步骤的结果动态更新。如果某项操作为支持请求添加了丰富信息,您会在此处看到相应信息。由于它显示的是执行某个步骤后的相应支持请求状态,因此模拟控制台中的数据会因步骤而异。检查不同步骤中的支持请求数据有助于您了解在执行剧本期间对支持请求应用了哪些更改。对话框中的多个标签页可提供更多详细信息。

查看结果

查看结果选项会显示当前步骤的具体操作结果。所呈现的信息类似于案例概览或案例墙,还包括有关任何丰富化处理的详细信息。

您可以访问以下类型的信息:

  • 主标签页会显示输出消息、表格、链接和附件。
  • “技术详情”标签页会显示操作结果和 JSON 结果(如果有)。

与其他选项类似,您可以点击数据进行更深入的检查。在查看结果页面上,您还可以点击设置 JSON 结果。借助此功能,您可以替换当前操作的 JSON 示例。您可以直接在集成式开发环境 (IDE) 中修改此 JSON 示例,然后在表达式构建器中以此为基础从 JSON 结果中提取特定数据。

固定结果

当某步骤成功运行时,固定结果选项可用。这是一项非常有用的功能,可让您将操作的结果视为固定值。

固定结果可通过以下方式节省您的时间:

  • 无需等待第三方服务的结果。
  • 减少对这些服务的查询次数,有助于节省凭据。

从本质上讲,当您重新运行 playbook 时,系统会“跳过”所有具有固定结果的步骤:不会再次执行其代码,而是直接使用固定结果。您还可以通过插入自己的模拟数据来修改此结果。启用固定结果后,操作会进入模拟模式,相应步骤的视觉表示形式通常会从蓝色背景变为灰色背景,明确表明该步骤已启用模拟模式。

插入结果

如果某个步骤失败,插入结果选项会变为可用状态。借助此功能,您可以手动插入模拟数据。下次运行此特定步骤时,系统会返回您手动提供的数据作为结果。

点击此选项后,相应操作会自动启用模拟模式。相应步骤的直观表示形式会从蓝色背景变为灰色背景,清晰表明模拟模式已启用。在模拟模式下,所有步骤都必须填写脚本结果字段。

插入模拟数据

如需插入模拟数据,您需要考虑以下几种使用情形:

  • 随时随地构建和测试剧本:您可以运行某个步骤,查看结果,并立即了解如何在剧本中进一步使用该数据。
  • 成功运行后节省时间:您可能需要固定相应步骤的结果。这样可以防止在后续测试期间针对第三方 API 重复运行该步骤,从而节省您的时间。
  • 测试不同场景:您可以更改步骤结果,以在各种条件下测试剧本。通过设置不同的模拟数据,您可以影响依赖于之前结果的后续条件和操作。例如,如果您的剧本包含一个分支为两条或更多路径的条件,您可以尝试使用模拟数据“强制”剧本采用特定分支。

插入模拟数据

您可以通过两种主要方式将模拟(模拟)数据插入到剧本中:通过剧本步骤配置对话框或在模拟器运行后使用固定结果(或插入结果)。

使用 Playbook 步骤配置对话框

  1. 点击 playbook 中的步骤配置对话框。
  2. 切换模拟模式以启用该模式。相应操作的直观表示形式会变为灰色,表示该操作处于模拟模式
  3. 操作结果部分,您可以插入模拟数据。其中包括:
    • 脚本结果:为基于脚本的操作提供模拟结果。
    • JSON 结果:输入 JSON 数据,可能需要从 JSON 代码中提取特定数据。您还可以点击加载示例来加载示例输出。此操作会加载操作的预期 JSON 结果,在以下情况下特别有用:
      • 模拟尚未运行,输出为空。
      • 模拟失败,未显示任何结果。
      • 您希望使用示例覆盖现有结果(来自之前的置顶或插入)。
    • 丰富化:您可以使用之前模拟运行中的丰富化,也可以创建自己的自定义丰富化键。

使用模拟器运行后的结果

固定结果

如果某个步骤成功运行,您可以点击相应操作旁边的 Pin Results。之后会发生以下情况:

  • 系统会自动以模拟模式打开该步骤
  • .
  • 最新一次成功运行模拟的结果会固定到相应步骤。您可以使用这些结果,也可以对其进行修改。
  • 您可以使用 JSON 编辑器修改 JSON 结果,也可以点击加载示例进行覆盖。
  • 您可以使用之前模拟运行中的丰富数据,也可以创建自定义丰富数据键。

插入结果

如果某个步骤失败,您可以点击相应操作旁边的 Insert Results。之后会发生以下情况:

  1. 现在,每次运行该步骤时都会返回此数据。

关闭 playbook 模拟器

关闭 Playbook 模拟器后,系统会隐藏底部控制台,并且模拟模式中的所有步骤都会恢复为常规的“实时”模式。不过,playbook 块除外,您必须关闭块模拟器才能关闭其模拟模式。插入的任何模拟(虚拟)数据都会保存,以便在下次开启模拟器时使用。

使用 playbook 区块

您还可以使用 Playbook 模拟器来构建和测试新的 playbook 代码块。 当某个区块处于模拟模式时,使用该区块的所有父 playbook 也会使用该区块的模拟数据。

需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。