Regression Test Selection Technique for Multi-Programming Language

Regression testing is a maintenance activity applied to modified software to provide confidence that the changed parts are correct and that the unchanged parts have not been adversely affected by the modifications. Regression test selection techniques reduce the cost of regression testing, by selecting a subset of an existing test suite to use in retesting modified programs. This paper presents the first general regression-test-selection technique, which based on code and allows selecting test cases for any programs written in any programming language. Then it handles incomplete program. We also describe RTSDiff, a regression-test-selection system that implements the proposed technique. The results of the empirical studied that performed in four programming languages java, C#, Cµ and Visual basic show that the efficiency and effective in reducing the size of test suit.




References:
[1] L.C. Briand, Y. Labiche and S. He, "Automating regression test
selection based on UML designs", 2008, pp 16-30.
[2] Anjaneyulu Pasala, Yann G. Rothermel, M.J. Harrold, J. Debhia,
Regression test selection for C++ software, Journal of Software Testing,
Verification, and Reliability, 2000 pp 77-109.
[3] ick LH, Fady A, Appala Raju G and Ravi P Gorthi, "Selection of
regression test suite to validate software applications upon deployment
of upgrades", 19th Australian Software Engineering conference, 25-28
March 2008, pp 130-138.
[4] Ravi P Gorthi, Anjaneyulu Pasala, Kailash KP and Benny Leong,
"Specification-based approach to select regression test suite to validate
change software", 15th Asia-Pacific Software Engineering conference,
2008, pp 153-160.
[5] Apiwattanapong, T., Orso, A., and Harrold, M.J., "JDiff: A Differencing
Technique and Tool for Object--Oriented Programs", Journal of
Automated Software Engineering, Vol 14, No. 1, March 2007, pp 3-36.
[6] Anjaneyulu P, Yannick LH Lew, and Ravi Prakash G, "How to Select
Regression Tests to Validate Applications upon Deployment of
Upgrades", Vol. 6, No. 1, 2008, pp 55 - 62.
[7] Xiaoxia R, Barbara G R, Maximilian S and Frank T, "Chianti: A
prototype change impact analysis tool for Java", Proceedings of 27th
International Conference on Software Engineering (ICSE), St. Louis,
USA, May 15-21, 2005, pp 664-665.
[8] T. Koju, S. Takada, N. Doi, "Regression test selection based on
intermediate code for virtual machines", Proceeding of International
Conference on Software Maintenance (ICSM 03), 2003 , pp 1-10.
[9] Orest P, Hunay U, and Andrews A, "Regression Testing UML Designs",
Proceedings of 22nd IEEE International Conference on Software
Maintenance (ICSM), Philadelphia, Pennsylvania, September 24-27,
2006, pp254-264.
[10] A. Ali, A. Nadeem, M.Z. Iqbal, M. Usman, "Regression testing based on
UML design models", 13th IEEE International Symposium on Pacific
Rim Dependable Computing, 2007, pp 85-88.
[11] A. Orso, N. Shi and M.J. Harrold, "Scaling regression testing to large
software systems", Proceeding of the 12th ACMSIGSOFT International
Symposium on Foundation of Software Engineering, 2004, pp 241-251.
[12] G. Rothermel, M.J. Harrold, "Analysing regression test selection
techniques", IEEE Transactions on Software Engineering , 1996, pp
529-551.
[13] M. Skoglund and P. Runeson, "A Case Study of The Class Firewall
Regression Test Selection Technique on a Large Scale Distributed
Software System" IEEE, 2005, pp74-83.
[14] E. Martins and V.G. Vieira, "Regression test selection for testable
classes", ENCS 2005, pp 453-470.
[15] L.C. Briand, Y. Labiche, G. Soccar, "Automating impact analysis and
regression test selection based on UML designs", International
Conference on software Maintenance, 2002, pp 252-261.
[16] Y. Chen, R.L. Probert, D.P. Sims, Specification based Regression test
selection with risk analysis, in: Proceedings of Conference of the Center
for Advance Studies on Collaborative Research, 2002.
[17] H. Agrawal, J.R. Horgan, E.W. Krauser and S.A. London, "Incremental
Regression Testing", Proceedings of IEEE Conference on software
Maintenance,1993, pp 348-357.
[18] M.J. Harrold, J.A. Jones, T. Li, D. Liang, A. Orso, M. Pennings, S.
Sinha, S.A. Spoon, Regression test selection for java software, in:
Proceedings of ACM Conference on Object-Oriented Programming,
Systems, Languages, and Applications (OOPSLA-01), 2001, pp 312-
326.
[19] T. Apiwattanapong, A. Orso, M.J. Harrold, "A differencing algorithm
for object-oriented programs", Proceedings of the 19th IEEE
International Conference on Automated Software Engineering (ASE
2004), 2004, pp 2-13.
[20] G. Rothermel, M.J. Harrold, "A. Safe, Efficient regression test selection
technique", ACM Transactions on Software Engineering and
Methodology, 1997, pp 173-210.
[21] Baradhi G and Mansour N, "A Comparative study of Five Regression
Testing Algorithms", Proceedings of Australian Software Engineering
Conference (ASWEC), Sydney, Australia, 1997, pp 174-183.
[22] Graves T L, Harrold M J, Kim J, Porter A and Rothermel M, "An
empirical Study of Regression Test Selection Techniques", ACM
Transactions on Software Engineering and Methodology, Vol. 10, No. 2,
April 2001, pp 184-208.