Title :
Distributed In Vivo Testing of Software Applications
Author :
Chu, Matt ; Murphy, Christian ; Kaiser, Gail
Author_Institution :
Dept. of Comput. Sci., Columbia Univ., Columbia, NY
Abstract :
The in vivo software testing methodology focuses on testing live applications by executing unit tests throughout the lifecycle, including after deployment. The motivation is that the "known state " approach of traditional unit testing is not always sufficient; deployed applications rarely operate under such conditions, and it may be more informative to perform the testing in live environments. One of the limitations of this approach is the high performance cost it incurs, as the unit tests are executed in parallel with the application. Here we present distributed in vivo testing, which focuses on easing the burden by sharing the load across multiple instances of the application of interest. That is, we elevate the scope of in vivo testing from a single instance to a community of instances, all participating in the testing process. Our approach is different from prior work in that we are actively testing during execution, as opposed to passively monitoring the application or conducting tests in the user environment prior to operation. We discuss new extensions to the existing in vivo testing framework (called Invite) and present empirical results that show the performance overhead improves linearly with the number of clients.
Keywords :
program testing; distributed in vivo testing; software applications; software testing; Application software; Computer bugs; Computer science; Costs; In vivo; Life testing; Monitoring; Performance evaluation; Software systems; Software testing; perpetual testing; software testing;
Conference_Titel :
Software Testing, Verification, and Validation, 2008 1st International Conference on
Conference_Location :
Lillehammer
Print_ISBN :
978-0-7695-3127-4
DOI :
10.1109/ICST.2008.13