在 Shopify Flow 中测试工作流

您可以在激活工作流之前对其进行测试。这样,您便可以验证工作流逻辑,并确认变量和参数正确无误,然后再激活工作流以使其自行运行。工作流测试不会执行发送通知、更新订单或产品,或者对已上线的商店数据进行任何更改等操作。您可以随时在 Shopify Flow 中测试工作流。

每次测试都从触发器事件数据开始。在 Shopify Flow 中,有 3 种获取触发器事件数据的方法,具体取决于您要使用实际商店数据还是模拟商店数据:

  • 记录事件:此选项会激活测试模式,用于监控商店中自然发生且会导致工作流触发的实时事件。在此模式下,您还可以打开新的浏览器标签页以手动执行实时操作,从而生成包含真实数据的测试事件,例如,您亲自创建真实订单来测试订单已创建 (Order created) 触发器。
  • 创建事件:通过此选项,您可以使用会导致工作流触发的实际商店数据手动创建模拟事件,而无需真正对商店进行任何更改。例如,您可以从 Shopify 后台选择一个现有订单并使用其真实数据作为订单已创建 (Order created) 触发器的测试事件,即使该订单已经创建也是如此。
  • 生成事件:与手动创建测试事件类似,此选项会让 Sidekick 为您生成模拟测试事件。例如,Sidekick 可以使用您商店中的现有订单数据生成 2 个测试事件(一个符合条件的事件和一个不符合条件的事件),以测试一个订单已创建 (Order created) 工作流,然后您可以根据测试偏好使用、编辑或移除这些测试事件。

在 Shopify Flow 中测试工作流的注意事项

在测试工作流之前,请查看以下注意事项:

  • 处于测试模式的工作流使用您的真实商店数据来返回 Liquid 变量和确定工作流逻辑,但不会执行操作或修改您的商店。测试运行将在遇到工作流逻辑中第一个试图进行更改的操作时停止,以防止意外更改。
  • 在创建工作流的任何阶段,您都可以对工作流进行测试。对当前版本进行测试时,无需工作流已处于完整状态,但工作流中的所有步骤都必须有效。不完整或配置错误的步骤不能用于测试。
  • 工作流的最近运行列表中不包括测试工作流运行记录。
  • 在测试期间,连接到外部服务(例如“发送 HTTP 请求”)的工作流操作会显示配置预览,但会显示“无法模拟此操作”消息作为其返回的数据值,而不是实际数据。

在 Shopify Flow 中使用真实的记录事件测试工作流

在记录事件时,工作流会根据您设置的触发器使用实际商店数据来生成一个测试事件列表。您可能需要手动执行操作以生成测试事件,具体取决于触发器事件是什么。例如,如果您要测试产品系列已创建 (Collection created) 事件,则您需要在 Shopify 后台手动创建产品系列,以便工作流可以记录该事件用于测试。

步骤:

  1. 在 Shopify 后台中,转至应用 > Flow

  2. “工作流”部分中,点击要测试的工作流。

  3. 点击“编辑”以打开工作流编辑器。

  4. 在工作流的触发器处,点击测试您的工作流

  5. 测试您的工作流对话框中,点击+ 添加事件 > 记录事件,以激活工作流的测试模式。

  6. 可选:如果没有自然生成的可用测试事件,则打开新的浏览器标签页并手动创建一个事件,使触发器启动测试工作流。

  7. 在测试事件对话框中,所有触发的测试事件都会显示在正在记录的事件列表中。选择您要为其运行测试工作流的测试事件。

  8. 工作流会根据您选择的触发器事件突出显示特定的条件和操作,以直观地显示工作流使用的逻辑路径。您可以执行以下任何操作:

    • 若要根据测试事件中的数据预览适用的输出结果,请点击工作流中的某个条件或操作步骤,然后点击预览标签页。这是确认所有变量均显示正确数据的实用方法。
    • 若要选择其他测试事件,请从正在记录的事件列表中选择新的测试事件。
    • 若要刷新工作流的测试结果,请在工作流触发器上点击 Redo Icon 重新测试
    • 若要保存测试事件,请点击 Heart Icon,然后点击保存。保存测试事件后,您可以根据需要修改测试数据。
  9. 可选操作:点击停止记录以退出侦听模式。您可以点击开始记录以再次恢复侦听实时测试事件。

在 Shopify Flow 中创建模拟事件以测试工作流

手动或使用 Sidekick 创建模拟事件时,您会根据您设置的触发器提供事件数据以生成测试事件列表。这些模拟事件使用实际的商店数据(例如商店中实际存在的产品和产品系列信息),但不会对商店进行任何实际更改。然后,您可以让工作流使用该模拟事件来运行工作流测试。

您在事件创建期间选择的数据取决于启动工作流的触发器类型。例如,以订单已创建 (Order created) 触发器开始的工作流要求您仅选择一个现有订单作为测试事件即可。但是,对于已向公司联系人分配权限 (Company contact assigned permission) 触发器,您需要选择公司地点、该公司的联系人和权限级别才能创建测试事件。

如果您不想自行选择数据来创建测试事件,Sidekick 可以为您生成一组测试事件。

步骤:

手动创建事件数据
  1. 在 Shopify 后台中,转至应用 > Flow

  2. “工作流”部分中,点击要测试的工作流。

  3. 点击“编辑”以打开工作流编辑器。

  4. 在工作流的触发器处,点击测试您的工作流

  5. 测试您的工作流对话框中,点击+ 添加事件 > 创建事件

  6. 创建事件对话框中,添加测试事件信息:

    1. 根据触发器的必填字段,选择您想要用作测试事件的商店数据。
    2. 可选操作:在事件名称字段中,为您的测试事件提供一个简短的描述性名称。
    3. 点击保存
  7. 工作流会根据您的新测试事件突出显示特定的条件和操作,以直观地显示工作流使用的逻辑路径。您可以执行以下任何操作:

    • 若要根据测试事件中的数据预览适用的输出结果,请点击工作流中的某个条件或操作步骤,然后点击预览标签页。这是确认所有变量均显示正确数据的实用方法。
    • 若要选择其他测试事件,请从保存的事件事件历史记录列表中选择新的测试事件。
    • 若要刷新工作流的测试结果,请在工作流触发器上点击 Redo Icon 重新测试
使用 Sidekick 生成事件数据
  1. 在 Shopify 后台中,转至应用 > Flow

  2. “工作流”部分中,点击要测试的工作流。

  3. 点击“编辑”以打开工作流编辑器。

  4. 在工作流的触发器处,点击测试您的工作流

  5. 测试您的工作流对话框中,点击生成事件

  6. 保存的事件列表中,选择您想要为其运行测试工作流的这 2 个新测试事件中的任意一个。

  7. 工作流会根据您选择的测试事件突出显示特定的条件和操作,以直观地显示工作流使用的逻辑路径。您可以执行以下任何操作:

    • 若要根据测试事件中的数据预览适用的输出结果,请点击工作流中的某个条件或操作步骤,然后点击预览标签页。这是确认所有变量均显示正确数据的实用方法。
    • 若要选择其他测试事件,请从保存的事件事件历史记录列表中选择新的测试事件。
    • 若要刷新工作流的测试结果,请在工作流触发器上点击 Redo Icon 重新测试

在 Shopify Flow 中编辑保存的测试事件

您可以随时编辑为工作流保存的测试事件的内容。您还可以完全移除任何保存的测试事件。

步骤:

  1. 在 Shopify 后台中,转至应用 > Flow

  2. “工作流”部分中,点击要测试的工作流。

  3. 点击“编辑”以打开工作流编辑器。

  4. 在工作流的触发器处,点击测试您的工作流

  5. 保存的事件列表中,将光标悬停在要编辑的测试事件上,然后点击 > 编辑

  6. 更新测试事件中各字段的内容。在选择新数据之前,您可能需要点击 X 以移除数据。

  7. 点击保存

  8. 可选操作:若要删除保存的测试事件,请将光标悬停在要删除的测试事件上,然后点击 > 移除

审核您的工作流测试

在 Shopify Flow 中测试工作流时,请查看以下信息,以确保您的工作流根据测试触发器事件按预期运行:

  • 工作流的整体逻辑是否符合您的预期?例如,如果测试事件的条件为 true,那么工作流是否遵循了满足该条件的逻辑路径?
  • 工作流是否在所有条件和操作中都使用了正确的变量?例如,您可能已要求工作流检查 fulfillments_item.totalQuantity 变量(该变量会返回一次发货的所有订单项目数量的总和),而不是 order.fulfillmentsCount.count 变量(该变量会返回订单的发货次数)。
  • 工作流是否在所有条件和变量中都使用了正确的运算符?
    • 确认 AND/OR 逻辑。例如,对于具有多个元素的条件,该条件是检查两个元素是否都为 true (A AND B),还是只检查其中一个 (A OR B)?
    • 在适用时,确认 均不/至少一个/全部 逻辑。
    • 在适用时,确认变量运算符的正确性,例如 等于不等于不存在存在大于小于是其中之一 等逻辑。
  • 工作流的条件和操作是否按正确的顺序发生?例如,您的工作流可能设置为同时检查多个不同的条件,而不是根据一个条件的结果再检查下一个条件。

如果测试工作流出现意外行为,请查看有关 Shopify Flow 工作流中的错误故障排除 的信息。