About the TestStand Process Models
Table of Contents
What is a Process Model?
A process model consists of a set of steps that are used to define the flow of execution of a TestStand system. It provides a skeletal structure to the entire test system. The process model determines what actions to take before and after the test sequence executes. It provides a series of steps that are used by the TestStand Engine to know how to control execution between Units Under Test (UUTs). A Process Model is a sequence file that contains several sequences. These sequences can be broadly classified into four groups: Execution entry points, Configuration Entry points, Normal Sequences and Callbacks. Each group is represented by a different color:
- Red : Execution Entry Points
- Purple: Configuration Entry Points
- Blue: Normal Sequence
- Green: Model Callback

[+] Enlarge Image
See Also:
Adding Configuration Entry Points to TestStand Process Models
Process Model Types
Process Models can be used to perform various functions before and after the client sequence file executes. Some common that are executed in the Process Model are serial number entry, database logging, and report generation. TestStand provides with three process models- the Sequential Model, the Parallel Model, and Batch Model. They are located in the <TestStand>\Components\NI Models\TestStandModels folder and can be modified through the Sequence Editor.
Sequential Model
The Sequential Model is the simplest model in TestStand. This model allows one Unit Under Test (UUT) to be tested at a time. The Sequential Model has two Execution Entry points - TestUUTs and Single Pass. Test UUTs executes a loop so that UUTs can be tested one after the other. Prior to testing each unit, a Serial Number Entry dialog box is displayed to allow the operator to identify the UUT. The Single Pass entry point tests a single UUT and completes execution.
Parallel Model
The Parallel Model is useful when testing multiple UUTs independently Tests may start and stop independently of each other. Switching and synchronization is typically added to allow the sharing of resources.
Batch Model
The Batch Model is used when a group of UUTs need to be tested at the same time. They work such that all the UUTs start and complete testing at the same time. However, the testing within that period of time may not be synchronous. The advantage of the Batch Process Model is that you can configure a set of steps to execute synchronously with the batch. There are three types of synchronized batch testing:
- Parallel: This type of synchronization calls for all threads in a batch to arrive at the same testing point for the parallel section. The testing within the parallel section then starts and stops at the same time.
- Serial: This type of synchronization is used when a shared resource is used by each thread. All threads arrive at the Entry point for Serial testing and then one thread is released at a time to access the resource.
- One Thread Only: Thus type of synchronization allows only one thread to execute the steps within the one-thread only synchronized section. When the designated thread finishes executing the designated steps, all other threads jump from start to finish.
Model Callbacks
- Model
- Engine
- Front-End
The Process Models have Model Callback steps that can be optionally overridden by the client sequence file. Model Callback sequences are represented by green in the process model. When the process model executes, the client sequence file can override any model callback by creating a sequence with the same name as the corresponding callback. TestStand will then execute the sequence within the client sequence file and ignore the sequence in the Model. This is method allows the user to customize the behavior of the process model without actually changing the process model.
You can create a Model Callback sequence using the following steps:
- Add a new sequence to the process model file
- Right click and select properties from the pull down menu
- Select the Model Tab
- Select Callback
The color will now change from blue to green.
To Override Model callbacks in a client sequence file:
- Go to Edit>>Sequence File Callbacks
- Double click on any callback so that it be added to your client sequence file
Conclusion
Reader Comments | Submit a comment »
Legal
This tutorial (this "tutorial") was developed by National Instruments ("NI"). Although technical support of this tutorial may be made available by National Instruments, the content in this tutorial may not be completely tested and verified, and NI does not guarantee its quality in any way or that NI will continue to support this content with each new revision of related products and drivers. THIS TUTORIAL IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND AND SUBJECT TO CERTAIN RESTRICTIONS AS MORE SPECIFICALLY SET FORTH IN NI.COM'S TERMS OF USE (http://ni.com/legal/termsofuse/unitedstates/us/).
