1. A computer-implemented method for automating testing of a software product under system resource constraints, the method comprising: receiving, by a computer, one or more software quality attributes (SQAs) and, for each SQA, a confidence level and an importance; receiving, by the computer, for one or more system resources, an amount of each system resource available for testing; apportioning, by the computer, each amount of system resource available for testing to the SQAs, based on the confidence level and the importance of each SQA; prioritizing, by the computer, each test in a set of tests, based on the number of SQAs associated with the test and any previous results of the test; for each SQA: selecting, by the computer, a subset of the set of tests, based on the test priorities, an expected consumption of system resources by each test, and the apportionment of the system resources to the SQA; executing, by the computer, the selected subset of tests; and updating, by the computer, the test results for the selected subset of tests.