CTI for TET
Common Test Infrastructure (CTI) for Test Environment Toolkit (TET) is a common set of tools, utilities and application interfaces which support OpenSolaris test development and execution using the TET test framework. CTI for TET is free open source software and uses the Artistic License like the open source version of TET, which allows the code to be contributed into the TET code base.
CTI for TET includes a run_test wrapper that executes test suites and passes the configuration program the following arguments:
F : Configuration parameter file (name=value pairs)
S : Do the setup only
E : Do the execute only using the prior setup
C : Do the cleanup only for the prior setup
L : Log directory
R : List of remote machines (only for distributed test)
I : Ignore html/sorted_result creation
j : Journal file (-j - goes to stdout)
s : scenario file (tcc option)
x : execute mode config file (tcc option)
CTI for TET has ksh, C, Perl and Java application interface libraries.
Installing CTI for TET
CTI for TET is included in the Distributed TET (SUNWstc-dtet) and TET-Lite (SUNWstc-tetlite) packages. The standard Solaris pkgadd command is used to install the packages, for example:
# pkgadd -d {package location} SUNWstc-tetlite
More information on package installation and what TET version is required is included in the test suite README files.
Building CTI for TET
In order to build CTI for TET, it must be combined with the current TET distribution from The Open Group. CTI for TET is added to the TET workspace in the ../tet/contrib/ctitools directory. After the code is combined into one workspace, the following two scripts a used to build and package TET and CTI for TET.
build_tet.ksh
The build_tet.ksh script will build the TET-Lite and Distributed TET versions of TET along with the CTI software under $TET_ROOT. If the $CODEMGR_WS environment variable is set, the built code will also be copied to $CODEMGR_WS/proto and be ready for package generation. Also, the ctitools/src/scripts/solpatch.ksh script is used by build_tet.ksh to patch TET so newer versions of Solaris are identified during the build process.
build_tet_pkg.pl
The build_tet_pkg.pl script creates TET-Lite or Distributed TET packages from the built code in $CODEMGR_WS/proto and stores the packages in the $CODEMGR_WS/packages directory. The following example shows how to build the SUNWstc-dtet package:
% setenv CODEMGR_WS {test_workspace}
% setenv TET_ROOT $CODEMGR_WS/src/tools/tet
% cd $TET_ROOT/contrib/ctitools/src/scripts
% build_tet.ksh inet
% build_tet_pkg.pl inet
Packaging Test Suites
build_suite_pkg.pl
The build_suite_pkg.pl script uses the standard Makefiles with the package directive to build a package of the current test suite. Script execution can be modified by supplying custom packaging files and information.