A Chemical Reaction Optimization Approach to Prioritize the Regression Test Cases of Object-Oriented Programs
DOI:
https://doi.org/10.5614/itbj.ict.res.appl.2017.11.2.1Keywords:
APFD, chemical reaction optimization, regression testing, test case minimization, test case prioritization, test case reduction.Abstract
Regression test case prioritization is used to improve certain performance goals. Limited resources force to choose an effective prioritization technique, which makes an ordering of the test cases so that the most suitable test case will be executed first. Executing regression test cases for a fixed time is all about time aware test case prioritization. Regression test case prioritization using chemical reaction optimization (CRO) for object-oriented programs is proposed in this paper. The effectiveness of the test case ordering was measured using average percentage of faults detected (APFD). Experiments on three object-oriented subject programs involving three different techniques were performed to judge the proposed approach. The empirical results indicate that the algorithm implemented using CRO gives a higher APFD value than the other two techniques.Downloads
References
Ostrand, T., Weyuker, E. & Bell, R., Where the Bugs Are, Proceedings of the ACM SIGSOFT International Symposium on Software Testing and Analysis, Boston, MA, pp. 86-96, 2004.
Ahmed, A., Software Testing as a Service, Auerbach Publications, New York, United States, 2009.
Ramler R., Biffl, S. & Grunbacher, P., Value-Based Management of Software Testing, ed., 1, Springer, 2006.
Boehm B. & Huang, L., Value-Based Software Engineering: A Case Study, IEEE Computer, 36(3), pp. 33-41, 2003.
Zhang, L., Hou, S.S., Guo, C., Xie, T. & Mei, H., Time Aware Test-Case Prioritization using Integer Linear Programming, ISSTA'09, Chicago, Illinois, United States, 2009.
Ashraf, E., Rauf, A. & Mahmood, K., Value based Regression Test Case Prioritization, Proceedings of the World Congress on Engineering and Computer Science, Vol. I, WCECS 2012, San Francisco, USA, 2012.
Rothermel G., Untch R., Chu C. & Harrold M.J., Test Case Prioritization: An Empirical Study, Proc. Int'l Conf. Software Maintenance, pp. 179-188, 1999.
G. Rothermel, Untch, R., Chu, C. & Harrold, M.J., Prioritizing Test Cases for Regression Testing, IEEE Trans. Software Eng., 27(10), pp. 929-948, 2001.
Wong, W.E., Horgan, J.R., London, S. & Agrawal, H., A Study of Effective Regression Testing in Practice, Proc. Eighth Int'l Symp. Software Reliability Eng., pp. 230-238, 1997.
Reeves, C.R., Modern Heuristic Techniques for Combinatorial Problems, ed., John Wiley & Sons, 1993.
Husbands, P., Genetic Algorithms for Scheduling, Artificial Intelligence and the Simulation of Behaviour (AISB), Quarterly, 89, pp. 38-45, 1994.
Garey, M. & Johnson, D.S., Computers and Intractability: A Guide to the Theory of NP-Completeness, ed. 1, Freeman, 1979.
Rothermel, G., Untch, R., Chu, C. & Harrold, M.J., Prioritizing Test Cases for Regression Testing, IEEE Trans. Software Eng., 27(10), pp. 929-948, 2001.
Lam, A.Y.S. & Li,V.O.K., Chemical Reaction Optimization: a Tutorial, Memetic Computing, 4(1), pp. 3-17, 2012.
Lam, A.Y.S. & Li, V.O.K., Chemical-reaction-inspired Metaheuristic for Optimization, IEEE Transactions on Evolutionary Computation, 14(3), pp. 381-399, 2010.
Xu, J., Lam, A.Y.S. & Li, V.O.K., Stock Portfolio Selection using Chemical Reaction Optimization, Proceedings of International Conference on Operations Research and Financial Engineering (ICORFE 2011), pp. 458-463, Paris, France, 2011.
Yu, J.J.Q., Lam, A.Y.S. & Li, V.O.K., Evolutionary artificial neural network based on chemical reaction optimization, IEEE Congress on Evolutionary Computation (CEC), pp. 2083-2090, 2011.
Pan, B., Lam, A.Y.S. & Li, V.O.K., Network Coding Optimization based on Chemical Reaction Optimization, IEEE Global Telecommunications Conference (GLOBECOM 2011), pp. 1-5, 2011.
Elbaum, S., Malishevsky, A.G. & Rothermel, G., Test Case Prioritization: A Family of Empirical Studies, IEEE Trans. Software Eng., 28(2), pp. 159-182,2002.
Rothermel, G., Untch, R., Chu, C. & Harrold, M.J., Test Case Prioritization: An Empirical Study, Proc. Int'l Conf. Software Maintenance, pp. 179-188, 1999.
Rothermel, G., Untch, R., Chu, C. & Harrold, M.J., Prioritizing Test Cases for Regression Testing, IEEE Trans. Software Eng., 27(10), pp. 929-948, 2001.
Srivastava & Thiagarajan, J., Effectively Prioritizing Tests in Development Environment, Proc. ACM SIGSOFT Int'l Symp. Software Testing and Analysis (ISSTA '02), pp. 97-106, 2002.
Panigrahi, C., Mall, R., An Approach to prioritize Regression Test Cases of object-oriented programs. J CSI Trans ICT, 1(2), pp. 159-173 Springer, June 2013.
Panigrahi, C. & Mall, R., A Heuristic-based Regression Test Case Prioritization Approach for Object-oriented Programs, Innovations Syst Softw Eng, 10(3), pp. 155-163, 2014.
Rothermel, G., Untch, R., Chu, C. & Harrold, M., Prioritizing Test Cases for Regression Testing, IEEE Trans Softw Eng, 27(10), pp. 929-948, 2001.
Li, Z., Harman, M. & Hierons, R., Search Algorithms for Regression Test Case Prioritization, IEEE Trans Softw Eng, 33(4), pp. 225-237, 2007.
Jeffrey, D. & Gupta, N., Experiments with Test Case Prioritization using Relevant Slices, J Syst Softw, 81(2), pp. 196-221, 2008.
Smith, A., Geiger, J., Kapfhammer, G.M. & Soffa, M.L., Test Suite Reduction and Prioritization with Call Trees, Proceedings of ASE'07, Atlanta, Georgia, United States, 2007.
Mohapatra, S.K. & Prasad, S., Evolutionary Search Algorithms for Test Case Prioritization, International Conference on Machine Intelligence and Research Advancement (ICMIRA), pp. 115-119, 2013.
Rothermel, G., Untch, R., Chu, C. & Harrold, M., Prioritizing Test Cases for Regression Testing, IEEE Trans Softw Eng, 27(10), pp.929-948,2001
Elbaum, S., Malishevsky, A. & Rothermel, G.,Incorporating Varying Test Costs and Fault Severities into Test Case Prioritization, Proceedings of the 23rdInternational Conference on Software Engineering, pp. 329-338, Ontario, 2001.