Procedures

Define your test sequence for your Units Under Test.

Overview

The Procedures allow you to set up the test sequence for one or more units under test. It provides analytics and test performances across multiple runs, including average test duration, yields, Cpk, and Control Chart for numerical values.

Integration

First, you need to create a new procedure in the TofuPilot interface. Go to Procedures page and click the Create Procedure button.

Once the procedure is created, you can upload your Runs using the procedure_id parameter to link them to the correct Procedure. You’ll also need to set the Unit Under Test and the test status.

Basic parameters

import openhtf as htf
from tofupilot.openhtf import TofuPilot


def main():
    test = htf.Test(
        procedure_id="FVT1",  # Procedure name set by default as "openhtf_test"
        part_number="PCB1",
    )
    with TofuPilot(test):
        # Duration calculated during execution
        test.execute(lambda: "PCB1A001")


if __name__ == "__main__":
    main()
  • Name
    procedure_id
    Type
    str
    Description

    Define unique procedure ID. You can view or rename it on the Procedure page in the application.

  • Name
    run_passed
    Type
    bool
    Description

    Set the Pass/Fail status of the procedure.

  • Name
    unit_under_test
    Type
    array
    Description

    Specify the Unit under test (UUT) being tested.

  • Name
    started_at
    Type
    str (optional)
    Description

    ISO 8601 start time of the Run. Example: "2024-09-11T08:00:00Z".

  • Name
    duration
    Type
    timedelta (optional)
    Description

    Specify the duration of the test.

  • Name
    procedure_version
    Type
    str (optional)
    Description

    Define the version of the procedure.

Rename a procedure

You can rename Procedure name or its procedure_id directly in the application. Go to the Procedure page, then select Edit ID or Edit Name from the menu.

Advanced parameters

You can define several important additional parameters for your procedures, each covered in a separate section:

In-app view

In TofuPilot, you can explore different procedures in the Procedures tab. On a Procedure page (for example, procedure_id FVT1, titled "PCBA Test"), you can navigate through various tabs that display analytics for all runs executed from this procedure. These include:

  • The status of Runs over time, based on run_passed
  • The average test Duration over time, compute from duration
  • The First-Pass Yield
  • Cpk for tests with numerical measurements and defined limits.

These features will be explained in more detail in the Test phases analysis section.

Was this page helpful?