TestStand process models invoke model plug-ins by calling the following set of optional entry point sequences with a pre-defined set of parameters at specific points in the testing process.

  • Model Plugin – Configure Standard Options
  • Model Plugin – Configure Additional Options
  • Model Plugin – Initialize
  • Model Plugin – Begin
  • Model Plugin – Pre Batch
  • Model Plugin – Pre UUT
  • Model Plugin – Batch Start
  • Model Plugin – UUT Start
  • Model Plugin – OnTheFly Step Results
  • Model Plugin – UUT Done
  • Model Plugin – Batch Done
  • Model Plugin – Post UUT
  • Model Plugin – Post Batch
  • Model Plugin – End

To simplify the model plug-ins you create, implement only the entry points you need to perform specific tasks. The Configure Standard Options and the Configure Additional Options entry points provide functionality you invoke to allow end users to edit a model plug-in configuration. Process models invoke the remaining entry points at run time from the locations shown in bold text in the following tables.

Note The run-time order is the same for the Test UUTs and Single Pass entry points except that the Single Pass entry point does not loop on UUTs or batches.
Sequential Model Plug-in Entry Point Run-Time Order for Controller and Socket Threads

Model Plugin - Initialize

ModelOptions Callback

Model Plugin - Begin

Process Setup

PreUUTLoop Callback

[Begin UUT Loop]

PreUUT Callback

Model Plugin - Pre UUT

If (!continueTesting) goto [End of UUT Loop]

Model Plugin - UUT Start

PreMainSequence Callback

MainSequence Callback

PostMainSequence Callback

Model Plugin - OnTheFly Step Results

Model Plugin - UUT Done

Model Plugin - Post UUT

PostUUT Callback

[End of UUT Loop]

PostUUTLoop Callback

Process Cleanup Callback

Model Plugin - End

Note In the following tables, all operations in a single row occur before all operations in the next row, and all operations within a cell occur in the order indicated. Operations in the same row but in different columns can occur in any order.
Parallel Model Plug-in Entry Point Run-Time Order
Controller Thread Test Socket Threads

Model Plugin - Initialize

ModelOptions Callback

Model Plugin - Begin

Process Setup

Model Plugin - Begin

PreUUTLoop Callback

[Begin UUT Loop]

PreUUT Callback

Model Plugin - Pre UUT

If (!continueTesting) goto [End of UUT Loop]

Model Plugin - UUT Start

PreMainSequence Callback

MainSequence Callback

PostMainSequence Callback

Model Plugin - OnTheFly Step Results

Model Plugin - UUT Done

Model Plugin - Post UUT

PostUUT Callback

[End of UUT Loop]

PostUUTLoop Callback

Model Plugin - End

Process Cleanup Callback

Model Plugin - End

Batch Model Plug-in Entry Point Run-Time Order
Controller Thread Test Socket Threads

Model Plugin - Initialize

ModelOptions Callback

Model Plugin - Begin

Process Setup

PreBatchLoop Callback

Model Plugin - Begin

PreUUTLoop Callback

[Begin Batch Loop]

PreBatch Callback

Model Plugin - Pre Batch

If (!continueTesting) goto [End of Batch Loop]

Model Plugin - Batch Start

[Begin UUT Loop]

PreUUT Callback

Model Plugin - Pre UUT

If (!continueTesting) goto [End of UUT Loop]

Model Plugin - UUT Start

PreMainSequence Callback

MainSequence Callback

PostMainSequence Callback

Model Plugin - OnTheFly Step Results

Model Plugin -Batch Done

Model Plugin - UUT Done

Model Plugin - Post UUT

PostUUT Callback

Model Plugin - Post Batch

PostBatch Callback

[End of Batch Loop]

[End of UUT Loop]

PostUUTLoop Callback

Model Plugin - End

PostBatchLoop Callback

Process Cleanup Callback

Model Plugin - End