Choosing a Deployment Mechanism

TestStand 2019 Help

Edition Date: May 2019

Part Number: 370052AA-01

»View Product Info
Download Help (Windows Only)
Identifying Components to Deploy Choosing a Deployment Mechanism Preparing Source Components for Deployment Customizing Components You Deploy Creating Deployments Transferring Files Validating Deployments

You can use the following installer-based or network-based mechanisms to transfer a test system to one or more test station computers:

Consider the following issues as you determine the deployment mechanism to use:

  • Network access of test station computers—If no network infrastructure exists, you cannot use a network drive or SCC system to deploy test systems and must instead use an installer on distribution media. Using the deployment utility instead of a third-party tool to build a distribution requires less specialized knowledge and development time and offers flexible customization options, such as using custom commands to run other installers. You must use a third-party tool to build installers that support repairing an installation or allowing users to select the features to install.
  • Test system functionality during network outage—If test station computers must maintain production-level operation during network outages, the test station computers must include local copies of all the files the test system requires, such as user interfaces, configuration files, sequence files, code modules, files shared among test station computers, and so on. Test station computers must also locally store reporting and database logging results if you must maintain test system functionality during a network outage. You can deploy the test system using a network drive or an SCC system, but you must store local copies of the files on the test station computer.
  • Initial development investment and updating requirements—Use the deployment utility to build a distribution to deploy a test system to test station computers you do not plan to update frequently. You can use the deployment utility to build patch distributions to update these types of test stations. Use a network-based deployment mechanism to deploy a test system to a large number of test station computers you plan to update frequently. Setting up a network-based solution for a large deployment can make updating the test system more efficient. You can also use a combination of mechanisms to deploy a test system. For example, you can use the deployment utility to build distributions and transfer those distributions to test stations using a network drive or SCC system.
  • Design the test system to account for the deployment mechanism—You can automate the install and update process by writing an application that downloads and uses all the necessary distributions to set up the test system instead of running several deployments manually for each test station. You can also run a batch program that synchronizes to a set of directories from an SCC server or copies a set of directories from a network drive and then runs the downloaded distributions. If the test system requires a manual initial set-up process, you can automate updating the test code. For example, you can modify a process model to read the UUT serial number and synchronize sequence files or code modules from an SCC server or copy the files from a network drive before testing the UUT.

    Consider the following issues if you use the Microsoft Windows startup folder or Task Scheduler to launch an update application you create to complete updates before or after testing occurs.
    • If you implement an automatic update solution, design the application to fail without changing the test system or revert the changes to account for situations in which network connections fail. Network outages during an update can result in a partially updated test system, which might return incorrect results or not work properly.
    • Copy all the updated installers to the test station before running the installers to prevent partial updates. If any copy of an installer fails, do not run any of the installers.
    • Revert changes by backing up directories before syncing the directories to the SCC server. If any synchronization fails, restore the directories from the backup copies.
    • If the test system requires a manual update process, you can use the user interface to prompt users to perform an update after a certain amount of time passes.
  • Creating patch deployments—Use the same deployment mechanism for patch deployments as you used for the full deployment you want to update.

If you choose to create a distribution with the TestStand Deployment Utility, you must consider the following build output options:

    Deployable Image Only—A directory which contains the files and statically referenced dependencies you specify on the System Source tab.
    MSI-based Installer—A custom installer to redistribute the deployable image and any NI drivers and software components required by the deployment.
    Package-based distribution—A custom NI package to redistribute the deployable image. Package based distributions can reference or include required driver and run-time packages depending on the distribution type.

Note Note  To create multiple top-level packages from a single TestStand project, NI recommends using NI Package Builder. Refer to Building a Distribution with NI Package Builder and the NI Package Builder Help (if installed) for more information.

If you do not use the deployment utility to build a distribution, you can use the deployment utility to create a deployable image, which you can deploy to test station computers by using a different deployment mechanism.

Regardless of the deployment mechanism you use, National Instruments recommends that you document the required process and procedures to effectively create a deployment.

The following table lists the important features each deployment mechanism supports.

Feature of Deployment Mechanism Distribution You Build with Deployment Utility or NI Package Builder Installer You Build with Third-Party Tools Network Drive SCC System
Provides a simple way to create a deployment that requires only configuration, not additional development tasks.
Can deploy the TestStand Runtime, which is required to execute TestStand-based test systems. Mechanisms that cannot automatically deploy the TestStand Runtime must install TestStand by running the installer National Instruments provides.
Can deploy National Instruments drivers and components, such as NI-DAQmx. Mechanisms that cannot automatically deploy National Instruments drivers must install the drivers by running the installers National Instruments provides, such as the National Instruments Driver DVD.
Can import hardware configuration information into Measurement & Automation Explorer. You must manually import hardware configuration information if the mechanism does not support automatically importing the information. Using an installer you build with third-party tools requires additional development to import the configuration.
Can run multiple third-party installers. You must manually run third-party installers if the mechanism does not support automatically running the installers.
Can install files in TestStand directories, such as the <TestStand Application Data>\Cfg directory, the <TestStand Public> directory, and the <TestStand> directory.
Can create a deployment without having specific knowledge of Microsoft Windows Installer technology.
Does not require test station computers to rely on a network infrastructure.
Test station computers use local copies of files to ensure test system operation during network outages.
Submitting modified files does not affect executing test systems because test station computers receive changes only when requested.
Supports uninstalling files you installed for the test system.
Supports repairing the deployment to replace deleted or modified files.
Provides a way for users to decide which features to install on a test station computer.
Provides an efficient way to perform small updates to the deployment. The size of the files changed determines the size of the update, which does not require a large, fixed, overhead size.
Automatically identify the set of modified files to include in a patch deployment. *
Easily scales to a large number of test system computers by updating files in a central repository.
Can revert to a previous version of the test system.

Features marked with an asterisk (*) are available in MSI-based installer deployments created by TestStand Deployment Utility, but are not available in package-based deployments.

See Also

Uninstalling a TestStand Deployment


Not Helpful