Procedures
Last updated on June 16, 2026
A procedure is a YAML file that defines your complete test sequence: what to test, how to test it, and what measurements to collect.
File
You can use any name for your procedure file as long as it ends in .yaml or .yml.
The file name doesn't affect functionality.
Name
You must set a name for your test procedure.
name: Battery Functional TestTofuPilot uses this name to identify the procedure in test reports and during execution. The dashboard procedure name is separate, since linking binds by id.
Version
You must set a version for your procedure. Semantic versioning (1.0.0) is recommended.
name: Battery Functional Test
version: 1.0.0TofuPilot records this version with each test result for traceability.
The version is a label you bump yourself, unlike a deployment, which is built automatically from every commit. Several deployments can carry the same version.
Description
You can add an optional description to document what your procedure tests.
name: Battery Functional Test
version: 1.0.0
description: Validates battery voltage, capacity, and charge cyclesTofuPilot displays this description in test reports and the procedure overview.
How is this guide?
TofuPilot Framework
Learn how to author a TofuPilot procedure in a single YAML file and run it with the CLI, with native support for phases, measurements, plugs, and operator UI.
Phases
Break down your TofuPilot test into distinct phases that run Python functions, shell commands, and operator UI interactions.