The testBuild program is the fourth program executed in the call chain to build a tagged version of the various software packages managed by the Release Manager.  This program executes all the unit test programs for the package and records their status (Success or Failure) along with their output in the database.

When invoked, this program requires the --buildId flag to be specified with the buildId corresponding to a valid entry in the build database table.  Thus all invocations must be of the form:

testBuild --buildId <buildID>

where <buildId> is the build package to be worked on.

When invoked this program begins by setting the testStartTime value in the build database table for this build.

The program runs by looping over all of the sub-packages in the build and looking for a program in the bin (exe on Windows) directory with a name of the form 'test_<package name>' where <package name> is the name of the sub-package.  If found, this test programs in run in a separate thread with a maximum time limit of testTime from the settings table.  The results of the test are stored in the testOutput field of the subPackage table and the success or failure of the test are stored in the testStatus field of the same table.  If the time spent on the test exceeds testTime, the test is killed and marked as failed in the testStatus field.

Once each of the tests have been run, the testStopTime field in the build table is updated and the program exits.

  • No labels