An automated test system requires the implementation of several tasks and measurements, some specific to the device under test (DUT) and others repeated for every device tested. Traditional test systems often combine both types of operations into the same single software layer. This paradigm makes code changes to either part and code reuse between projects cumbersome.
A modular test system architecture makes a clear separation between system-level tasks that are common to every device (test management software) and the DUT-level tasks that are different for each device tested (test code). See Table 1 for examples of different DUT-level and system-level tasks. This separation allows you to quickly reuse, maintain, and modify test management software components without affecting the actual test code and vice versa.
Operations Different for Each Device
Operations Common for Each Device
||Test Flow Control
Table 1. Test Management Software Tasks Compared to Test Development Software Tasks
TestStand is NI’s powerful ready-to-run test management software designed to develop, deploy, and execute test system software (Figure 2). At its core, TestStand is a test executive that allows you to sequence calls to test code written in virtually any programming language. In addition, right out of the box, TestStand provides common test management software functionality such as:
- Result logging to any OLEDB or ODBC databases
- Report generation in a variety of formats including HTML, text, XML, and ATML
- User management with different access levels
- Test limits management
- Simple and advanced operator interfaces provided in five different languages
- Parallel testing capabilities that allow testing multiple products or running multiple tests on a single DUT simultaneously
In addition, TestStand itself is built on a modular software architecture, which allows you to use each of these components out of the box or customize them to meet unique system requirements.
Figure 2.TestStand Sequence Editor
Some companies have written their own test executives and spent valuable engineering resources to develop test management software from the ground up. This strategy often results in reduced productivity and ties up resources over time for software maintenance. Instead, using commercially available test management software, such as TestStand, you can maximize productivity by reducing the development of features that are common to each device and focusing your development efforts on the test code―the operations that are different for each device. See TestStand test management software in action to learn more.