The Effectiveness of an Enhanced Weighted Method with a Unique Priority Value for Test Case Prioritization in Regression Testing

 
 
 
  • Abstract
  • Keywords
  • References
  • PDF
  • Abstract


    Regression testing is an important and costly strategy in software testing. To decrease its cost, many methods have been proposed including the test case prioritization methods. The aim of the prioritization methods is to define an ideal order of test cases that allows for higher coverage and early fault detection with minimal number of executed test cases. However, the problem with most of the existing test case prioritization methods is the random sorting of test cases when two or more test cases record equal priority values. In this paper, the effectiveness of an enhanced weighted method using a unique priority value, UniVal, is proposed. Unival prioritizes test cases based on code coverage criteria with information from history of previous executions.  In addition, a controlled experiment was executed, and the results were statistically analyzed to assess the effectiveness of the proposed method. The results indicates better performance with regard to prioritize test cases and achieve higher APFD values. 

     

     


  • Keywords


    Regression testing; Software testing; Statistical test; Test case prioritization; Unique priority value.

  • References


      [1] Beizer, B. (1990). Software Testing Techniques (2Nd Ed.). New York, NY, USA: Van Nostrand Reinhold Co.

      [2] Chaudhary, N., Sangwan, O. P., & Singth, Y. (2012). Test Case PrioritizationUsing Fuzzy Logic for GUI based Software. International Journal of Advanced Computer Science and Applications(IJACSA), 3(12), 222–227. Retrieved from http://ijacsa.thesai.org/

      [3] Cho, Y., Kim, J., & Lee, E. (2016). History-Based Test Case Prioritization for Failure Information. In 2016 23rd Asia-Pacific Software Engineering Conference (APSEC) (pp. 385–388). IEEE. https://doi.org/10.1109/APSEC.2016.066

      [4] Collis, J., & Hussy, R. (2003). Business research: a practical guide for undergraduate and postgraduate students / Jill Collis and Roger Hussey. - Version details - Trove. Retrieved from http://trove.nla.gov.au/work/13991820?q&sort=holdings+desc&_=1494530661049&versionId=220777880

      [5] Elbaum, S., Rothermel, G., Kanduri, S., & Malishevsky, A. G. (2004). Selecting a cost-effective test case prioritization technique. Software Quality Journal, 12, 185–210. https://doi.org/10.1023/B:SQJO.0000034708.84524.22

      [6] Fazlalizadeh, Y., Khalilian, A., Abdollahi Azgomi, M., & Parsa, S. (2009). Incorporating historical test case performance data and resource constraints into test case prioritization. Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 5668 LNCS, 43–57. https://doi.org/10.1007/978-3-642-02949-3_5

      [7] Felderer, M., & Fourneret, E. (2015). A systematic classification of security regression testing approaches. International Journal on Software Tools for Technology Transfer. https://doi.org/10.1007/s10009-015-0365-2

      [8] Gupta, S., Raperia, H., Kapur, E., Singh, H., & Kumar, A. (2012). A Novel Approach for Test Case Prioritization. International Journal of Computer Science, Engineering and Applications, 2(3), 53–60. https://doi.org/10.5121/ijcsea.2012.2305

      [9] Harikarthik, S. K., & Palanisamy, V. (2014). Improving Quality of Software Testing Process by Test Case Prioritization, 245–248.

      [10] Hashini, M., & Varun, B. (2014). Clustering Approach to Test Case Prioritization Using Code Coverage Metric, (May), 3–6.

      [11] Jorgensen, P. C. (2014). Software Testing A Craftsman’s Approach (4th ed.). crc press. Retrieved from http://202.191.120.147:8020/greenstone/collect/ebooks/index/assoc/HASH017c.dir/doc.pdf

      [12] Jyoti, & Solanki, K. (2014). A Comparative Study of Five Regression Testing Techniques : A Survey. INTERNATIONAL JOURNAL OF SCIENTIFIC & TECHNOLOGY RESEARCH, 3(8). Retrieved from www.ijstr.org

      [13] Kaur, N., & Mahajan, M. (2014). Prioritization of Test Cases using Branch Coverage with Multiple criteria for Regression Testing, 5(2), 972–974.

      [14] Khalilian, A., Abdollahi Azgomi, M., & Fazlalizadeh, Y. (2012). An improved method for test case prioritization by incorporating historical test case data. Science of Computer Programming, 78(1), 93–116. https://doi.org/10.1016/j.scico.2012.01.006

      [15] Khandelwal, E., & Bhadauria, M. (2013). Various Techniques Used For Prioritization of Test Cases, 3(6), 3–6.

      [16] Korel, B., Koutsogiannakis, G., & Tahat, L. H. (2007). Model-based test prioritization heuristic methods and their evaluation. Proceedings of the 3rd International Workshop on Advances in Model-Based Testing - A-MOST ’07, 34–43. https://doi.org/10.1145/1291535.1291539

      [17] Kumar, A., & Singh, K. (2014). A Literature Survey on test case prioritization. COMPUSOFT, 3(5). Retrieved from https://ijact.in/index.php/ijact/article/viewFile/320/271

      [18] Lawanna, A. (2012). The Theory of Software Testing, 16(1), 35–40.

      [19] Mei, L., Zhang, Z., Chan, W. K., & Tse, T. H. (2009). Test case prioritization for regression testing of service-oriented business applications. Proceedings of the 18th International Conference on World Wide Web - WWW ’09, 901. https://doi.org/10.1145/1526709.1526830

      [20] Muthusamy, T. (2014). A New Effective Test Case Prioritization for Regression Testing based on Prioritization Algorithm, 6(7), 21–26.

      [21] Muthusamy, T., & Seetharaman, K. (2013). A Test Case Prioritization Method with Weight Factors in Regression Testing Based on Measurement Metrics, (12), 390–396.

      [22] Muthusamy, T., & Seetharaman, K. (2014). Comparisons of Test t Case Prioritization Algorithm with Random Prioritization, 5(5), 6814–6818.

      [23] Orso, A., & Rothermel, G. (2014). Software testing: a research travelogue (2000–2014). Proceedings of the on Future of Software Engineering - FOSE 2014, 117–132. https://doi.org/10.1145/2593882.2593885

      [24] Ponaraseri, S., Susi, A., & Tonella, P. (2008). Using the Planning Game for Test Case Prioritization. Test.

      [25] Prakash, N. (2013). Potentially Weighted Method for Test Case Prioritization, 18, 7147–7156. https://doi.org/10.12733/jcis5860

      [26] Prakash, N., & Rangaswamy, T. R. (2013). WEIGHTED METHOD FOR COVERAGE BASED TEST CASE PRIORITIZATION, 56(2), 235–243.

      [27] Roongruangsuwan, S., & Daengdej, J. (2010). Test case prioritization techniques. Journal of Theoretical and Applied Information Technology, 18, 45–60.

      [28] Rothermel, G., Untch, R. H., Chu, C., Harrold, M. J., & Society, I. C. (2001). Prioritizing Test Cases For Regression Testing Prioritizing Test Cases For Regression Testing. IEEE Transactions on Software Engineering, 27(10), 929–948. https://doi.org/10.1145/347324.348910

      [29] Shadish, W. R., Cook, T. D., & Campbell, D. T. (2002). EXPERIMENTAL AND QUASI-EXPERIMENTAL DESIGNS FOR GENERALIZED CAUSAL INFERENCE. Retrieved from http://impact.cgiar.org/pdf/147.pdf

      [30] Shelke, S., & Nagpure, S. (2014). The Study of Various Code Coverage Tools. International Journal of Computer Trends and Technology (IJCTT)--Volume, 13(1), 46–49.

      [31] Srikanth, H., Banerjee, S., Williams, L., & Osborne, J. (2014). Towards the prioritization of system test cases. Software Testing, Verification and Reliability, 24(4), 320–337. https://doi.org/10.1002/stvr.1500

      [32] Tanwani, L., & Waghire, A. (2016). Test Case Prioritization for Regression Testing of GUI. International Acadmey of Engineering and Medical Research, (1). Retrieved from http://www.iaemr.com/wp-content/uploads/2016/11/test-case-prioritization-regression-testing-gui.pdf

      [33] Tonella, P., Avesani, P., & Susi, A. (2006). Using the case-based ranking methodology for test case prioritization. IEEE International Conference on Software Maintenance, ICSM, 123–132. https://doi.org/10.1109/ICSM.2006.74

      [34] Wang, X., & Zeng, H. (2014). Dynamic Test Case Prioritization based on Multi-objective, (61073050), 0–5.

      [35] Wohlin, C., Runeson, P., Höst, M., Ohlsson, M. C., Regnell, B., & Wesslén, A. (2012). Experimentation in Software Engineering. Berlin, Heidelberg: Springer Berlin Heidelberg. https://doi.org/10.1007/978-3-642-29044-2

      [36] Yadav, D. K., & Dutta, S. (2017). Regression Test Case Prioritization Technique Using Genetic Algorithm (pp. 133–140). https://doi.org/10.1007/978-981-10-2525-9_13

      [37] Yoo, S., & Harman, M. (2007). Regression Testing Minimisation, Selection and Prioritisation : A Survey. Test. Verif. Reliab, 0, 1–7. https://doi.org/10.1002/000

      [38] Zou, Y., Chen, Z., Zheng, Y., Zhang, X., & Gao, Z. (2014). Virtual DOM Coverage : Drive an Effective Testing for Dynamic Web Applications Categories and Subject Descriptors. Issta.


 

View

Download

Article ID: 23335
 
DOI: 10.14419/ijet.v7i4.31.23335




Copyright © 2012-2015 Science Publishing Corporation Inc. All rights reserved.