Automation
Scenarios, Lua, datasets, reports, and safe execution.
Automation
Automation executes against project tags and connection profiles through the same native connection, codecs, write guards, and Raw Traffic attribution as the desktop UI. A Professional license is required to run it; Community projects may still retain definitions.
| Resource | Choose it when | What it owns |
|---|---|---|
| Structured scenario | Repeatable, reviewable test or commissioning sequence | Typed Read, Write, Expect, Wait, If/Else, Retry, nested scenario, Complete, Fail |
| Lua 5.4 | Dynamic logic that is awkward as a step tree | Bounded tag-oriented I/O, waits, assertions, captured output; no unrestricted OS access |
| Run profile | A saved launch configuration | Automation target, connection, parameters, dataset, repetitions, reporting |
Build the first safe scenario
Start with reads and expectations
Prove symbolic tag targets and decoding before adding a write.
Add typed inputs
Use parameters for values that change between runs. Use a dataset when the same scenario must run for multiple named cases.
Add control flow sparingly
If/Else expresses a branch, Retry repeats a bounded child sequence, and nested scenarios reuse a named workflow.
Dry run
Dry run validates and presents planned writes without changing the device. Review every target and encoded value.
Run against the intended profile
Automation has priority over background polling and may interrupt/reopen the shared connection.
Inspect and export the report
Use iteration, case, nested step, captured variable, observed value, duration, log, and transaction ID evidence.
Reports and comparison
Export JSON for lossless replay, JUnit for CI, or standalone HTML for a human-readable artifact. Imported reports open in read-only Replay without a connection or rerun path. Compare a candidate against a compatible baseline to see semantic regressions, improvements, changed observations, and duration deltas matched by stable case and step identity.