Automated Software Testing as a Service (TaaS)
This paper makes the case for TaaS - automated software testing as a cloud-based service. We present three kinds of TaaS: (1) a public certification service, akin to Underwriters Labs, that independently assesses the reliability, safety, and security of software; (2) a "home edition" on-demand testing service for consumers to verify the programs they are about to install on their PC or mobile device; and (3) a "programmer's sidekick" enabling developers to thoroughly and promptly test their code with minimal upfront resource investment. Unlike existing test infrastructures, TaaS automatically tests software, without human involvement from the service customer's or provider's side. We argue that recent techniques for automated testing - even if usable only on toy programs - can become practical by harnessing the resources of compute clouds. TaaS can help reduce bug density in all software we depend on. Our work suggests the technical feasibility of doing so, and we further argue that it is compelling also from a social and business point of view.