A test system can rely on a wide variety of files and components. When it comes time to deploying your test software, all of these components must be identified, collected, and transferred to the target computer. Hence a “deployment image” is created that contains a directory of files that will be installed to the target computer. Two different options for creating this deployment image are
- Using the TestStand Deployment Utility
Manually gathering all files needed for distribution is a tedious job, but provides the developer full user control over what files are deployed to the target computer. One of the most common problems developers experience when deploying test software is missing or incorrect versions of file dependencies. A file dependency is a secondary file that a file requires to compile, load, or run correctly. Normally dependencies come in the form of DLLs, .NET assemblies or subVIs. It is extremely important that you identify exactly what dependencies your test software requires, as well as their versions. This can be challenging and in many cases one might need a third-party product to determine the explicit dependencies of a file.
Since it’s extremely easy to forget to include various dependencies in the deployment image, a tool that packages all relative files together for easy distribution would be nice. The TestStand Deployment Utility greatly simplifies this process by using workspaces and project files to collect all of the files required to successfully distribute your test software to a target computer.
The TestStand Deployment Utility is tightly integrated with LabVIEW facilitating the deployment of the VIs that make up your test system. One of LabVIEW’s biggest benefits is that it is inherently modular. Although LabVIEW applications can be compiled into monolithic executables, they can still be executed and maintain their modular nature as VIs. The TestStand Deployment Utility focuses on facilitating the collection of all necessary VIs. The deployment utility analyzes all of the LabVIEW VIs that it deploys to determine their complete hierarchies, including all subVIs, DLLs, external subroutines, run-time menus, LabVIEW Express configuration diagrams, and help files that your VIs may reference. It then packages these VIs and their hierarchies to ensure that they will be executable on systems that do not have the LabVIEW development system installed. Now that the deployment image has been created, the next step is to actually deploy this image onto your test machines using one of the three methods described below.