1. A method for testing a target using a plurality of test cases comprising: adding the plurality of test cases into a queue of an automated testing tool; and repeating through the testing tool: setting a next test case in the queue as a current test case; and testing the target using the current test case, where testing the target using the current test case results in failure and yields an error-causing condition of the failure, (i) where the current test case has never failed before, updating a database of the testing tool to associate the current test case with the error-causing condition; (ii) where the current test case has failed before but the current test case is not associated with the error-causing condition within the database, updating the database to associate the current test case with the error-causing condition; and (iii) removing any other of the test cases from the queue that are associated with the error-causing condition within the database, wherein repeating said setting and testing is repeated until the queue is empty, and wherein testing of the target is autonomic and takes into account dependencies of the test cases to each other, source of the dependencies being error-causing conditions yielded during testing, including a dependency between a first test case and a second test case in the queue being where testing of the target using the first test case results in failure and a respective error-causing condition of that failure, then testing of the target using the second test case is not performed, the second test case being associated with respective error-causing condition of that failure and being removed from the queue, the second test case being removed from the queue irrespective of any bug fix being addressed.