The In Vivo Approach to Testing Software Applications

作者: Gail E. Kaiser , Matt Chu , Christian Murphy

DOI: 10.7916/D8ST7XR4

关键词: Deployment environmentSoftware engineeringContinuous testingReal-time testingTest caseSoftwareRobustness (computer science)Computer scienceUnit testingSoftware construction

摘要: Software products released into the field typically have some number of residual bugs that either were not detected or could been during testing. This may be result flaws in test cases themselves, assumptions made creation cases, infeasibility testing sheer possible configurations for a complex system. Testing approaches such as perpetual continuous seek to continue these applications even after deployment, hopes finding any remaining flaws. In this paper, we present our initial work towards methodology call vivo testing, which unit tests are continuously executed inside running application deployment environment. These execute within current state program (rather than by creating clean slate) without affecting altering state. Our approach can reveal defects both interest and themselves. It also used detecting concurrency robustness issues appeared lab. Here describe framework called Invite developed Java applications. We enumerate classes discover, provide results case study on publicly-available application, well experiments measure added overhead.

参考文章(37)
Gail E. Kaiser, Rean Griffith, Adding Self-healing capabilities to the Common Language Runtime Department of Computer Science, Columbia University. ,(2005) , 10.7916/D85T3TBD
Michael E. Locasto, Angelos D. Keromytis, Stelios Sidiroglou, Software Self-Healing Using Collaborative Application Communities network and distributed system security symposium. pp. 95- 106 ,(2006) , 10.7916/D8RR27M5
Alessandro Orso, Taweesup Apiwattanapong, Mary Jean Harrold, Leveraging field data for impact analysis and regression testing foundations of software engineering. ,vol. 28, pp. 128- 137 ,(2003) , 10.1145/940071.940089
Sebastian Elbaum, Madeline Hardojo, An empirical study of profiling strategies for released software and their impact on testing activities international symposium on software testing and analysis. ,vol. 29, pp. 65- 75 ,(2004) , 10.1145/1007512.1007522
George K. Baah, Alexander Gray, Mary Jean Harrold, On-line anomaly detection of deployed software Proceedings of the 3rd international workshop on Software quality assurance - SOQUA '06. pp. 70- 77 ,(2006) , 10.1145/1188895.1188911
S. S. Yau, R. C. Cheung, Design of self-checking software ACM SIGPLAN Notices. ,vol. 10, pp. 450- 455 ,(1975) , 10.1145/390016.808468
Matthias Merdes, Rainer Malaka, Dima Suliman, Barbara Paech, Daniel Brenner, Colin Atkinson, Ubiquitous RATs: how resource-aware run-time tests can improve ubiquitous software systems Proceedings of the 6th international workshop on Software engineering and middleware. pp. 55- 62 ,(2006) , 10.1145/1210525.1210538
Ben Liblit, Mayur Naik, Alice X Zheng, Alex Aiken, Michael I Jordan, Public deployment of cooperative bug isolation "Second International Workshop on Remote Analysis and Measurement of Software Systems (RAMSS 04)" - W15S Workshop - 26th International Conference on Software Engineering. pp. 57- 62 ,(2004) , 10.1049/IC:20040352
Irena Pavlova, Mikael Åkerholm, Johan Fredriksson, Application of built-in-testing in component-based embedded systems international symposium on software testing and analysis. pp. 51- 52 ,(2006) , 10.1145/1147249.1147256