A generic testing framework to automatically allocate, install and verify
a given version of a system under test, to exercise the system against a
series of tests in a "hands-off" objective manner, and then to export
information about the tests to one or more developer repositories (such
as a query-able database, an email list, a developer web server, a source
code version control system, a defect tracking system, or the like). The
framework does not "care" or concern itself with the particular
implementation language of the test as long as the test can issue
directives via a command line or configuration file. During the automated
testing of a given test suite having multiple tests, and after a
particular test is run, the framework preferably generates an "image" of
the system under test and makes that information available to developers,
even while additional tests in the suite are being carried out. In this
manner, the framework preserves the system "state" to facilitate
concurrent or after-the-fact debugging. The framework also will
re-install and verify a given version of the system between tests, which
may be necessary in the event a given test is destructive or otherwise
places the system in an unacceptable condition.