1. A method of testing a computer having an operating system, the method comprising: joining the computer to a computer network and receiving over the computer network policy information, the policy information identifying at least one diagnostic test to be run with the operating system suspended and at least one set of conditions each corresponding to at least one corresponding diagnostic test, wherein upon satisfaction of a first set of conditions at least one first corresponding diagnostic test is to be carried out; upon detecting satisfaction of a first set of conditions: suspending execution of the operating system; while the operating system is suspended, executing a diagnostic routine to obtain test data; storing the test data; resuming execution of the operating system; and with a program executing with the operating system, generating a diagnostic result based on the stored test data.