For a large, complex system, the amount of test cases in a regression test suite can range from a few hundred to several thousands, which can take hours or even days to execute. Regression testing also requires considerable resources that are often not readily available. This precludes their use in an interactive setting, further contributing to an inefficient testing process.
Cloud computing offers the use of virtualized hardware, effectively unlimited storage, and software services that can help reduce the execution time of large test suites in a cost-effective manner. The research presented by Tilley and Parveen leverages the resources provided by cloud computing infrastructure to facilitate the concurrent execution of test cases. They introduce a decision framework called SMART-T to support migration of software testing to the cloud, a distributed environment called HadoopUnit for the concurrent execution of test cases in the cloud, and a series of case studies illustrating the use of the framework and the environment. Experimental results indicate a significant reduction in test execution time is possible when compared with a typical sequential environment.
Software testing in the cloud is a subject of high interest for advanced practitioners and academic researchers alike. For advanced practitioners, the issue of cloud computing and its impact on the field of software testing is becoming increasingly relevant. For academic researchers, this is a subject that is replete with interesting challenges; there are so many open problems that graduate students will be busy for years to come. To further disseminate results in this field, the authors created a community of interest called “Software Testing in the Cloud” (www.STITC.org), and they encourage all readers to get involved in this exciting new area.