Patent ID: 7020797

Claim:
A method for automatically managing a distributed software test system, wherein the test system includes a network of test computers for execution of a plurality of test jobs and at least one client computer for controlling the test computers, the method comprising: (a) providing the test computers with a service program for automatically registering the availability of the computer and the attributes of the computer with the client computer; (b) comparing execution requirements of each test job with the attributes associated with the available computers; (c) dispatching the test jobs to the computers having matching attributes; (d) providing the service programs with a heartbeat function so that the service programs transmit signals at predefined intervals over the network to indicate activity of each test job running on the corresponding computer; (e) monitoring the signals from the service programs and determining a failure has occurred for a particular test job when the corresponding signal is undetected, and if the corresponding signal is detected, determining a failure has occurred when a comparison of snapshots of test logs produced by the test job indicate that the test job is no longer making progress; and (f) automatically notifying the user when a failure has been detected.