Home Corporate Contacts

TETware Knowledgebase


Products
Solutions

Information

Datasheet
Documentation
FAQ
Knowledgebase

Return to Knowledgebase Index

37. How do environment variables get passed to test cases?

 

Question

When we run using TET-Lite, we pick up environment information by sourcing files specify environment variables such as TET_ROOT, TET_SUITE_ROOT and PATH. At what point does this information get put into the environment on the remote machine when Distributed TETware is used?

 

Answer

When tcc processes a test case, it puts certain variables in the test case's environment. These variables are called communication variables and are used by tcc to communicate information to the TCM and API. tcc always puts all of these variables in the test case's environment, supplying default values if necessary. This operation is performed by both the Lite and the Distributed versions of tcc.

The values of some of these variables on the local system are derived from environment variables that you provide to tcc (namely: TET_ROOT, TET_EXECUTE, TET_SUITE_ROOT and TET_RUN). By contrast, when tcc puts communication variables in the environment of a test case or tool on a remote system, it derives values for these variables from the values that you specify in tetdist.cfg.

The values of other communication variables (such as TET_CONFIG and TET_ACTIVITY) are generated internally by tcc.

In TETware-Lite, test cases and tools are children of tcc so they inherit environment variables from tcc.

By contrast, in Distributed TETware, test cases and tools are children of tccd, so they inherit environment variables from tccd. tcc sends a copy of its environment to tccd on system 0 (the local system) soon after logging on. This ensures that test cases and tools running on the local system receive (almost) the same environment as they would if run by the Lite version of tcc. (In practice, the environment inherited by test cases and tools running on the local system is the union of tcc's and tccd's environment, with the values of variables supplied by tcc having precedence over any corresponding values in tccd's environment.)

However, tcc does not send a copy of its environment to tccd on other systems; it only sends the communication variables as described previously. This means that the values of other variables (such as PATH) are the ones that are in force at the time that tccd starts up (although additional variables may be specified using the -e command-line option). In particular, the inetd version of tccd inherits its environment from inetd, which is usually fairly minimal.

 

See also

  • "Initial processing'' and "Communication variables'', both in the chapter entitled "The Test Case Controller'' in the TETware Programmers Guide.
  •  
  • The tccd manual page in the TETware User Guide.

 


Home Contacts Legal Copyright Corporate News

Copyright © The Open Group 1995-2012, All Rights Reserved