跳到主要内容

Graph 自动化参考

Graph 用可视化流程编排 Object、Query 和 Variable。它适合多步骤、分支、等待、超时和需要断点验证的自动化逻辑。

何时查这页

  • 不确定应该使用 Page method、Graph 还是 C# Script;
  • 节点端口无法连接,或 Build 报类型、引用和参数错误;
  • 需要编排等待、超时、操作员确认或异常恢复;
  • Debug 没有在预期断点暂停,或暂停后不知道下一步;
  • 修改已经保存,但运行版本仍在执行旧流程。

入口与核心对象

Resources → Graphs 新建或打开 Graph。可以从 Object tree 把对象拖到画布生成调用节点,也可以右键画布从插入菜单选择节点。

对象作用
MethodGraph 的可调用入口;一个 Graph 可以有多个 method
Control port表达执行顺序,例如一步完成后走哪个分支
Value port在节点之间传递字符串、数字、布尔值、对象或结构化数据
BreakpointDebug 模式下在指定节点暂停
Graph Variable仅属于当前 Graph 实例的临时值

Object 绑定 Graph 后,Graph method 会成为该 Object 的扩展能力,供 Page、其他 Graph 或运行生命周期调用。

节点速查

节点用途
Method定义入口参数、返回值和第一步执行位置
Function调用 Object 或标准库方法
Query调用 App Settings 中定义的 HTTP Query
If / Switch按条件选择分支
Foreach顺序处理集合中的每一项
Concurrent并行执行多条分支,全部完成后继续
Get Variable / Set Variable读写 Graph、App 或 Saved Variable
Wait Until重复检查条件;成功和超时走不同出口
Confirm等待运行页操作员确认、取消或超时
Subgraph调用同一 Object 上的另一个 Graph method

控制端口表示“先后顺序”,值端口表示“数据来源”。连线时类型必须匹配;需要默认值时在节点 Properties 中设置,而不是用错误类型勉强连接。

什么时候用 Graph

需求推荐位置
单个按钮调用一次 Object method,再显示提示Page Flow method
多步骤设备顺序、分支、等待、超时和恢复Graph
协议、复杂算法或标准库没有的设备能力C# Script 中的 Object method,再由 Graph 调用
页面布局、显示格式和导航Page / Component

把稳定动作封装成有业务含义的 Object method,例如“回零”或“读取条码”;Graph 只编排这些能力,不重复底层地址和协议。

Variable scope

Scope定义位置生命周期
graph当前 Graph 属性每个 Graph 实例独立,适合流程临时值
appApp Settings → Variables在当前已加载运行时中跨 Page / Graph 共享;重新加载或重新部署后从初始值开始
savedApp Settings → Variables当前值由 Runtime target 保存,重启后继续使用

使用 Get Variable / Set Variable 选择明确 scope 和 Variable。不要用 Graph Variable 保存需要跨 App 重启保留的参数。

等待、超时与生命周期

  • 所有现场等待都要有明确完成条件和可接受的超时策略。
  • Wait Until 的 Success 接正常流程,Timeout 接报警、重试、取消或安全停止;不能接受无限等待时不要把 Timeout 留空。
  • Confirm 会等待运行页响应。多人同时打开时,只有第一个有效响应会生效。
  • 绑定 Object 的 Init 用于启动准备,Dispose 用于停止清理。
  • Update 属于周期扫描路径,只放短小且有界的检查。长等待或外部 IO 应由异步 Object method 或独立状态流程承担。

Build 与 Debug

Graph 保存后必须生成有效运行产物。显式 Build 可以在启动前发现问题;Start 和 Debug 也会按需准备并部署当前 runtime package。

调试流程:

  1. 在需要观察的节点设置 Breakpoint。
  2. 确认 App 已停止,并选择正确 Runtime target。
  3. 点击 Debug。
  4. 命中断点后状态变为 Paused,Graph 会定位当前节点。
  5. 检查变量、Object 状态、Problems 和 Console,再选择 Continue 或 Stop。
  6. 修改流程前先 Stop;Paused 仍然占用运行时,不能直接 Build 新版本。

关键规则

  • Graph 负责流程,不负责画面布局或设备协议。
  • Query 来自 App Settings;不要在 Graph 中复制 URL、认证和请求体。
  • Object、method、Variable 和 Query 引用必须指向当前 App 中真实存在的资源。
  • 每条异常、取消和超时路径都要有明确结果。
  • Running、Debugging、Paused、Starting 或 Stopping 时不会替换 live Object tree。
  • 保存成功不等于 Build 成功,Build 成功也不等于现场流程已经验收。

如何验证

  1. 保存后检查 Problems 中的缺失端口、类型不匹配和无效引用。
  2. 执行 Build,修复全部阻止性诊断。
  3. 在模拟对象或安全测试环境中先走 Debug。
  4. 分别验证正常条件、False 分支、Timeout、取消和设备异常。
  5. 检查 Pause / Continue / Stop 能否收敛到预期状态。
  6. 最后在真实设备上按现场批准的测试计划低风险试运行。

相关教程与指南