Academic Company Events NI Developer Zone Support Solutions Products & Services Contact NI MyNI

Document Type: Tutorial
NI Supported: Yes
Publish Date: Sep 6, 2006


Feedback


Yes No

Related Categories

Related Links - Developer Zone

Related Links - Products and Services

How TestStand Works

7 ratings | 3.86 out of 5
Print

Overview

At the heart of TestStand is an ActiveX-based execution engine. The TestStand Engine is a set of DLLs that export an ActiveX API. The Sequence Editor and the Operator Interfaces use the API to access the TestStand Engine. In addition, there are three important file types that are used to define the characteristics of the development, run-time and execution environments.

Important File Types

The TestStand Engine relies on three types of files for proper test system management, control and execution.

1. Test Sequence Files are descriptive files outlining which tests are going to be executed, how the test modules are integrated to the TestStand engine, and what are the various properties and flow of these test modules.

2. Process Models are a special type of sequence file. The Process Model outlines how the tests in the Test Sequence File will be integrated with the rest of the enterprise systems such as reporting, logging, UUT management, etc. There are three process models (Sequential, Batch, and Parallel) that are shipped with TestStand. The process model is made up of configuration entry points, model callbacks, execution entry points, and utility subsequences.


Figure 1: Components of the Sequential Process Model

3. Configuration INI Files are files used to store the current configuration of TestStand options, types, and global variables.

Interfaces to the TestStand Engine


Along with these three types of files, TestStand provides an extensive application programming interface (API) to access and control every aspect of the engine. There are two main types of clients for the TestStand engine. These are the Sequence Editor and the Operator Interfaces – the two categories of user interfaces to TestStand.


[+] Enlarge Image
Figure 2: Clients of the TestStand Engine

The Sequence Editor is what people typically think of when they think of TestStand. The Sequence Editor is the main environment providing access to all the functions and features of the TestStand engine. In the Sequence Editor, Test Sequence Files can be created, debugged and modified. The Sequence Editor includes a utility to build deployment packages to ease the distribution of Test Sequences and operator interfaces.

The second type of client is the Operator Interface. An operator interface is a customizable user interface for TestStand which can be used to execute and debug test sequence files created in the Sequence Editor. The operator interface is typically used on a manufacturing floor or if you need to deliver a custom look and feel to your test or validation system. Operator Interfaces can be created in many programming languages, including LabVIEW, LabWindows/CVI, C#, VB, and VB .NET.

How the Parts Come Together


As stated previously, the TestStand Engine is the heart of TestStand. The abilities of the Sequence Editor, operator interfaces, Process Models, Test Sequences, and INI files to configure, manage and execute test systems are all by virtue of their interaction with the TestStand Engine. All of these components come together to form a flexible and powerful test system.

When one of the user interfaces is launched the INI files are referenced to set the characteristics on the environment including reporting, database logging, debugging and user management options. These INI files are updated whenever options are changed.

The ability to develop and execute Test Sequence Files from a user interface is by virtue of calls to the TestStand Engine through the API. When a Test Sequence is executed, an execution of the selected Process Model is started. The Process Model references the options configured in the INI files.

When an execution starts, the Process Model becomes an independent client of the TestStand Engine, using the API to invoke execution of the Test Sequence, the test modules and other common tasks such as database logging and report generation. While the Process Model is running behind the scenes controlling the order of operations, the TestStand Engine is running behind the Process Model and making everything happen. This is illustrated in the following diagram.


[+] Enlarge Image
Figure 3: The TestStand Engine Running the Show

Back to What is TestStand? »
Why Choose TestStand? »
7 ratings | 3.86 out of 5
Print

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/).