Open Access Open Access  Restricted Access Subscription or Fee Access

An Empirical Literature Study of Various Test Case Prioritization Techniques

Kamna Solanki, Dr. Yudhvir Singh

Abstract


Software Testing is the process of exercising the software product in predefined ways to check if the behavior is the same as expected behavior. Regression testing is the process of validating any changes that may have been induced in a software system during software maintenance. Test Suite Prioritization in Regression testing basically aims to re-schedule those test cases which should be re-executed during regression testing based on some criteria. The main objective of test case prioritization is to maximize early fault detection. Regression Testing is an expensive,  but still an important process. Because the size of a test suite is extremely large, therefore  exhaustive re-testing of the system is impossible. Unfortunately, system may have shortage of resources to re–execute entire set of test cases during regression testing.So, selective re-testing of the system based on some criteria is the cost-benefical solution. This paper describes various test case prioritization techniques developed so far systematically.


Keywords


Regression Testing, Software Testing, Test Case Prioritization.

Full Text:

PDF

References


S. Yoo and M. Harman, "Regression Testing Minimisation, Selection and Prioritization : A survey," Journal of Software Testing Verification and Reliability, Vol. 22, no. 2, pp. 67-120, 2012

Jeffrey, Dennis, "Test suite reduction with selective redundancy."A thesis submitted to University of Arizona, 2005.

Beena, R., and S. Sarala. "Code Coverage Based Test Case Selection and Prioritization." International Journal Of Software Engineering and Applications, Vol. 4,No. 6,pp 39-49 ,2013.

C. Catal and D. Mishra, "Test case prioritization: A systematic study," Software Quality Journal [Springer], vol. 21, no. 2, pp. 445-478, 2013.

L. H. Tahat and B. Korel, "Regression Test Suite Prioritization Using System Models," Journal of Software Testing Verification and Reliability, vol. 22, no. 7, pp. 481-506, 2012.

P. Bansal, "A critical review on test case prioritization and Optimization using soft computing techniques," in 2nd International Conference on Role Of Technology in Nation Building(ICRTNB),ISBN: 97881925922-1-3, 2013.

Huang, Yu-Chi, et al. "Design and analysis of cost-cognizant test case prioritization using genetic algorithm with test history." Computer Software and Applications Conference (COMPSAC), 2010 IEEE 34th Annual. IEEE, 2010.

Sabharwal, Sangeeta, Ritu Sibal, and Chayanika Sharma. "A Genetic Algorithm based Approach for Prioritization of test case scenarios in static testing."Computer and Communication Technology (ICCCT), 2011 2nd International Conference on. IEEE, 2011.

Sabharwal, Sangeeta, Ritu Sibal, and Chayanika Sharma. "Prioritization of test case scenarios derived from activity diagram using genetic algorithm."Computer and Communication Technology (ICCCT), 2010 International Conference on. IEEE, 2010.

Mala, D. Jeya, and V. Mohan. "ABC tester—artificial bee colony based software test suite optimization approach." International Journal of Software Engineering2.2 (2009): 15-43.

Mala, D. Jeya, and V. Mohan. "Quality improvement and optimization of test cases: a hybrid genetic algorithm based approach." ACM SIGSOFT Software Engineering Notes 35.3 (2010): 1-14.

Jeffrey, Dennis, and Neelam Gupta. "Experiments with test case prioritization using relevant slices." Journal of Systems and Software 81.2 (2008): 196-221.

Jeffrey, Dennis, and N. Gupta. "Test case prioritization using relevant slices."Computer Software and Applications Conference, 2006. COMPSAC'06. 30th Annual International. Vol. 1. IEEE, 2006.

Srivastava, Praveen Ranjan, and Tai-hoon Kim. "Application of genetic algorithm in software testing." International Journal of software Engineering and its Applications 3.4 (2009): 87-96.

P. R. Srivastava, "Optimal Test sequence generation using Firefly algorithm.," Swarm and Evolutionary Computational Journal [Elsevier], vol. 8, no. 1, pp. 44-53, 2013.

Srivastava, Praveen Ranjan, et al. "Automated test data generation using cuckoo search and tabu search (csts) algorithm." (2012): 195-224.

R. Krishnamurthy, "“Regression Test Suite Prioritization using Genetic Algorithms," International Journal of Hybrid Information Technology, vol. 2, no. 3, pp. 35-52, 2009.

Kaur, Arvinder, and Shubhra Goyal. "A genetic algorithm for regression test case prioritization using code coverage." International journal on computer science and engineering 3.5 (2011): 1839-1847.

Li, Zheng, Mark Harman, and Robert M. Hierons. "Search algorithms for regression test case prioritization." Software Engineering, IEEE Transactions on 33.4 (2007): 225-237.

Srivastava, Amitabh, and Jay Thiagarajan. "Effectively prioritizing tests in development environment." ACM SIGSOFT Software Engineering Notes. Vol. 27. No. 4. ACM, 2002.

Srivastava, Amitabh, Jay Thiagarajan, and Craig Schertz. "Efficient integration testing using dependency analysis." Microsoft Research, TechReport MSR-TR-2005-94 (2005).

Do, Hyunsook, Gregg Rothermel, and Alex Kinneer. "Empirical studies of test case prioritization in a JUnit testing environment." Software Reliability Engineering, 2004. ISSRE 2004. 15th International Symposium on. IEEE, 2004.

P. Jacob and Ravi, "Optimization of Test cases by Prioritization," Journal of Computer Science, vol. 9, no. 8, pp. 972-980, 2013.

Jacob, T. Prem, and Dr T. Ravi. "Detecting of software source code defects using test case prioritization rules." 2nd International Conference on Latest Computational Technologies. 2013.

Jacob, T. Prem, and Dr T. Ravi. "Regression testing: Tabu search technique for code coverage." Indian Journal of Computer Science and Engineering 4.3 (2013): 208-215.

A. Ahmed and M. Shaheen, "Software Test Suite Prioritization using Multi-Criteria Fitness function," in ICCTA, 13-15 October, Egypt, 2012

P. Parashar, A. Kalia and R. Bhatia, "How Time-Fault Ratio helps in Test Case Prioritization for Regression Testing," International Journal Of software Engg.(IJSE), vol. 5, no. 2, pp. 25-35, 2012

Parashar, Prem, Arvind Kalia, and Rajesh Bhatia. "Pair-Wise Time-Aware Test Case Prioritization for Regression Testing." Information Systems, Technology and Management. Springer Berlin Heidelberg, 2012. 176-186

B. Suri and S. Singhal, "“Implementing Ant Colony Optimization for Test Case Selection and Prioritization," International Journal on Computer Science and Engineering (IJCSE), vol. 3, no. 5, pp. 1924-1932, 2011.

S. Dalal and R. Chillar, "A Novel Technique for Generation of Test Cases Based on Bee Colony Optimization and Modified Genetic Algorithm," International Journal of Computer Applications, vol. 68, no. 19, pp. 12-17, 2013

A. Shakeel, K. Devadkar and P. Gharpure, "An optimized technique for test suite refinement in regression test," International Journal of Advancements in Research & Technology, vol. 2, no. 7, pp. 263-266, 2013.

R. Kommineni and V. Ahlwat, "Functional Test Suite Minimization using genetic algorithm," Infosys Lab briefings, Vol. 11, No. 2, pp. 59-69, 2013.

K. Aggarwal, M. Goyal and P. R. Srivastava, "Code Coverage using Intelligent Water drop," International Journal Of Bio-Inspired Computation, vol. 4, no. 6, pp. 392-402, 2012.

Roongruangsuwan, Siripong. "Jirapun Daengdej,‖ Test Case prioritization techniques." Journal of theoretical and applied informational technology (2005).

C. Catal and D. Mishra, "Test case prioritization: A systematic study," Software Quality Journal [Springer], vol. 21, no. 2, pp. 445-478, 2013.

Rothermel, Gregg, et al. "Prioritizing test cases for regression testing."Software Engineering, IEEE Transactions on 27.10 (2001): 929-948.

Rothermel, Gregg, et al. "Test case prioritization: An empirical study." Software Maintenance, 1999.(ICSM'99) Proceedings. IEEE International Conference on. IEEE, 1999.

Requirement Based System Test Case Prioritization of New and Regression Test Cases [Online] http://shodhganga.inflibnet.ac.in/bitstream/10603/4963/12/12_chapter%203.pdf

Elbaum, Sebastian, Alexey Malishevsky, and Gregg Rothermel. "Incorporating varying test costs and fault severities into test case prioritization." Proceedings of the 23rd International Conference on Software Engineering. IEEE Computer Society, 2001.

Elbaum, Sebastian, et al. "Selecting a cost-effective test case prioritization technique." Software Quality Journal 12.3 (2004): 185-210.

Harrold, M. Jean, Rajiv Gupta, and Mary Lou Soffa. "A methodology for controlling the size of a test suite." ACM Transactions on Software Engineering and Methodology (TOSEM) 2.3 (1993): 270-285

Jeffrey, Dennis, and R. Gupta. "Test case prioritization using relevant slices."Computer Software and Applications Conference, 2006. COMPSAC'06. 30th Annual International. Vol. 1. IEEE, 2006.

Bryce, Renée C., and Charles J. Colbourn. "Prioritized interaction testing for pair-wise coverage with seeding and constraints." Information and Software Technology 48.10 (2006): 960-970.

Bryce, Renée C., and Charles J. Colbourn. "The density algorithm for pairwise interaction testing." Software Testing, Verification and Reliability 17.3 (2007): 159-182.

Bryce, Renee C., Sreedevi Sampath, and Atif M. Memon. "Developing a single model and test prioritization strategies for event-driven software." Software Engineering, IEEE Transactions on 37.1 (2011): 48-64.

Srikanth, Hema, Laurie Williams, and Jason Osborne. "System test case prioritization of new and regression test cases." Empirical Software Engineering, 2005. 2005 International Symposium on. IEEE, 2005.

Sampath, Sreedevi, et al. "Applying concept analysis to user-session-based testing of web applications." Software Engineering, IEEE Transactions on 33.10 (2007): 643-658.


Refbacks

  • There are currently no refbacks.


Creative Commons License
This work is licensed under a Creative Commons Attribution 3.0 License.