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

Document Type: Tutorial
NI Supported: Yes
Publish Date: May 11, 2007


Feedback


Yes No

Related Categories

Related Links - Developer Zone

Related Links - Products and Services

Effective TestStand Upgrading

3 ratings | 5.00 out of 5
Print

Overview

This paper discusses considerations needed when upgrading your TestStand Development Environment. The architecture of TestStand allows for easy upgrading with a few steps to follow.

Overview


Upgrading your test system to new versions of test management software can seem like a challenging task. However, NI TestStand, the leading test management software, is designed to allow for easy upgrading to new versions while keeping your test system functionality intact. Two examples of TestStand features that facilitate upgrades are the TestStand API and TestStand Engine. The TestStand API, which is the interface of the TestStand Engine, is backwards compatible. Therefore, even new versions of TestStand will be able to run your sequences, code modules and TestStand API calls designed with previous versions.

An Architecture Built for Upgrades

The TestStand API is changed only by adding new methods. Any changes to the TestStand API which affect current functions will do so in a way that will maintain backwards compatibility. For example when functions are deprecated they are not removed to maintain backwards compatibility. This allows your legacy code to work correctly, while giving you extra API functions to expand your current system functionality in new versions.

You might notice a change in the look and feel of the Sequence Editor when upgrading TestStand. Though the look may be different, the underlying execution engine is still the same. Since the Sequence Editor and Operator Interface are both clients to the underlying TestStand Engine, your sequences will still run correctly even though the Sequence Editor has changed.

There are a few considerations to be aware of in order to have a seamless upgrade. Following these guidelines will allow you to keep your sequences executing correctly as you upgrade in order to take advantage of a new version's functionality.

Upgrading Components


Migrating Configuration Files


The first and most common items which will need to be migrated are your configuration settings. These files are located the <TestStand>\Cfg folder, where <TestStand> is your TestStand version's installation folder. The following table describes the files located in this folder. You can either pick and choose which files to migrate to the new versions depending on which features you have customized or copy all of the files located in this folder to your new TestStand Cfg folder.

File Name

File Description

StationGlobals.ini

Contains Station Globals

TestStandModelModelOptions.ini

Contains setting on the TestStand Process Model Options

SeqEdit.ini

Contains setting for the Sequence Editor

ToolMenu.ini

Contains settings for your Tools Menu in the Sequence Editor and Operator Interface (Includes custom menu items)

TestStandModelReportOptions.ini

Contains settings for TestStand’s Report Generation

Users.ini

Contains all user management information

TestExec.ini

Contains all of your Station Options, including Search Directories, for the Sequence Editor and Operator Interface

TestStandDatabaseOptions.ini

Contains settings for TestStand’s Database interaction including schemas



Migrating Components

There are other components you may need to migrate when upgrading your TestStand version. These components include Process Models, step types, icons, code templates, support dlls, support Sequences and callbacks. These components can be modified TestStand components as well user defined components created from scratch. To migrate all of these items, you can simply copy the files over to the new TestStand version's folders or you can use the Sequence File Differ tool to compare the new version of these components with your modified version.

You can migrate the Process Model over in one of two ways. If you would like your Process Model to behave the same as your previous version, with no added functionality, you can simply copy over the Process Model sequence files you have modified into the \Components\User\Models folder. Any other components that are used by these the Process Model you would like to use, including DLLs and subsequences, will also need to be copied over.

The second method involves migrating the features in the Process Model of the latest version of TestStand to your custom Process Model. This is the recommended way to migrate the Process Model, as it gives you the extra features of the newest TestStand version while still keeping your changes. In order to find the difference between the Process Model of the latest version of TestStand and merge them into your custom Process Model you can use the Sequence File Differ tool that ships with TestStand. If you have removed pieces from the original Process Models in your custom Process model, you will have to remove these items after using the Differ tool to merge the Process Models. This is because the Differ tool will add these pieces if they are missing from your previous Process Model.

For the other modified TestStand components, you must copy your old files over to the new TestStand folder, much like the configuration files. These files will be located under <TestStand>\Components\User folder as long as you have placed all of your modified components into the User folder. (Note: It is possible these files are located in the Components\NI folder if you did not copy the files to your User folder.))

Using Multiple Versions of TestStand

Use the TestStand Version Selector (located under Start » Programs » National Instruments » <TestStand> where <TestStand> is your TestStand version's folder) to change between different versions of the TestStand Engine. This will change the current active version of the TestStand Engine. By changing the active version of the TestStand Engine, you will be able to execute Sequences from different developers no matter what versions they use for development.

When using multiple TestStand versions, some of the new API features may not be available on previous engine versions. In order to use these new features, you must use the newest TestStand Engine. However, since the API is backwards compatible, you can run older Sequence Files on new versions of the TestStand Engine.

Hidden Property Upgrade Considerations

TestStand stores certain properties for a step's configuration in Hidden Properties. They are hidden from the user unless the user enables the "Show Hidden Properties" Station Option. Sequence developers may have used these properties to easily access certain properties, such as what module is associated with a step, or accessing an execution property such as the loop option. Although the TestStand API provides access to these properties, it is sometimes easier to simply access these properties using an expression rather than using an ActiveX Step or other code module to properly access these properties. In older versions of TestStand, the only way to programatically change certain properties (specifically properties regarding the code module's settings) was to manipulate the hidden properties.

The hidden properties in TestStand may change between versions (although they often will remain the same). In order to be able to facilitate a seamless upgrade, it is recommended to change all references to hidden properties to use the TestStand API rather than directly access these parameters. Beginning in TestStand 4.0, you can access the TestStand API in expressions which will allow you to easily access these properties in the same way expressions were used to access hidden properties in the past. By using the TestStand API, any changes made in future versions of TestStand to the Hidden Properties will be abstracted by the API, making such changes transparent to the sequence developer.

Upgrading the Test Executive Toolkit to TestStand

If you are using LabVIEW or LabWindows/CVI Test Executive Toolkit and are ready to upgrade to TestStand, there are certain considerations you may need to take. Two help files located in your TestStand installation under \Doc\Help called LWTECompatibility.chm (for LabWindows/CVI Test Executive) and LVTECompatibility.chm (for LabVIEW Test Executive) discuss some helpful hints and procedures to facilitate an upgrade such as converting your sequence files, as well as other components from Test Executive to TestStand. To migrate to TestStand, you must be using at least the LabVIEW Test Executive Toolkit 5.1.1 or LabWindows/CVI Test Executive Toolkit 2.0.1.

Conclusion

TestStand is powerful and flexible, while providing an architecture built for easy and seamless upgrades. By following the previously outlined guidelines, you will have the added features and power of new versions of TestStand, while also maintaining the same functionality as your previous test system. For more specific information on changes in new versions of TestStand and any possible compatibility issues, refer to your TestStand release notes of the new since the one used to develop your test system.

Related Links

3 ratings | 5.00 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/).