Quality Assurance of Software Applications Using the In Vivo Testing Approach
Quality Assurance of Software Applications Using the In Vivo Testing Approach
复制标题
使用体内测试方法保证软件应用程序的质量
DOI:
10.1109/icst.2009.18
复制
发表时间:
2009
期刊:
影响因子:
--
通讯作者:
Matt Chu
中科院分区:
文献类型:
--
作者:
Christian Murphy;G. Kaiser;Ian Vo;Matt Chu
Software products released into the field typically have some number of residual defects that either were not detected or could not have been detected during testing. This may be the result of flaws in the test cases themselves, incorrect assumptions made during the creation of test cases, or the infeasibility of testing the sheer number of possible configurations for a complex system; these defects may also be due to application states that were not considered during lab testing, or corrupted states that could arise due to a security violation. One approach to this problem is to continue to test these applications even after deployment, in hopes of finding any remaining flaws. In this paper, we present a testing methodology we call in vivo testing, in which tests are continuously executed in the deployment environment. We also describe a type of test we call in vivo tests that are specifically designed for use with such an approach: these tests execute within the current state of the program (rather than by creating a clean slate) without affecting or altering that state from the perspective of the end-user. We discuss the approach and the prototype testing framework for Java applications called Invite. We also provide the results of case studies that demonstrate Invite's effectiveness and efficiency.