Skip to main content
Log in

Design of a Novel Weighted-Multicriteria Analysis Model for Effective Test Case Prioritization for Network and Robotic Projects

  • Published:
Wireless Personal Communications Aims and scope Submit manuscript

Abstract

Network and real-time projects requires special and effective testing consideration before implementing in real environment. The effective test-sequence not only reduces the actual testing time but also reduces the cost and efforts. The design-flow diagram and the module attributes play an essential role in generating a valid path sequence. In this paper, an automated and generalized framework is designed that processes the code project and generates the optimized test sequence. In the earlier stage of this framework, the structural and relational features of program code are extracted, and the design flow-diagram is constructed. While constructing the diagram, the design-time features are computed, connected, and updated with each node. The connectivity, dependency, positional, and contributional features are computed for each node. In the second stage, this weighted design-flow diagram and fault weights are used in a combined form for deciding the low-cost test sequence. The proposed framework is applied to five network, security and robotics based code sources. The comparative analysis is done against the Random Search, Genetics, and REMAP methods for test sequence generation. The proposed model achieved an average APFDc score of 87.11%. The proposed model achieved 3.3% gain over REMAP (Ripper + IBEA(3Obj)), 7.9% gain over REMAP (Ripper + SPEA2(2Obj)), 20.63% gain over Genetics (3Objects), 21.05% gain over Genetics (2Objects), 34.5% gain over Random Forest (3 Objects) and 34.96% gain over Random forests(3Objs). The results confirm that the proposed model achieved the higher APFDc score than state-of-art methods.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5

Similar content being viewed by others

Data Availability

The open source projects that are used in this research are cited properly. Some results are derived from earlier research and these are also cited properly.

Code Availability

Not available.

References

  1. Ramler, R., Buchgeher, G., & Klammer, C. (2018). Adapting automated test generation to GUI testing of industry applications. Information and Software Technology, 93, 248–263.

    Article  Google Scholar 

  2. Garousi, V., Felderer, M., & Kılıçaslan, F. N. (2019). A survey on software testability. Information and Software Technology, 108, 35–64.

    Article  Google Scholar 

  3. Ahmad, T., Iqbal, J., Ashraf, A., Truscan, D., & Porres, I. (2019). Model-based testing using UML activity diagrams: A systematic mapping study. Computer Science Review, 33, 98–112.

    Article  Google Scholar 

  4. Khurana, N., & Chillar, R. S. (2015). Test Case Generation and Optimization using UML Models and Genetic Algorithm. Procedia Computer Science, 57, 996–1004.

    Article  Google Scholar 

  5. Campos, S., Grumberg, O., Yorav, K., & Fady, C. (2004). Test sequence generation and model checking using dynamic transition relations. International Journal on Software Tools for Technology Transfer, 6(2), 174–182.

    Article  Google Scholar 

  6. Mukherjee, R., & Patnaik, K. S. (2018). A survey on different approaches for software test case prioritization. Journal of King Saud University - Computer and Information Sciences, 33, 1041–1054.

    Article  Google Scholar 

  7. Hemmati, H. (2019). Chapter four - advances in techniques for test prioritization. Advances in Computers, 112, 185–221.

    Article  Google Scholar 

  8. Bukhsh, F. A., Bukhsh, Z. A., & Daneva, M. (2020). A systematic literature review on requirement prioritization techniques and their empirical evaluation. Computer Standards & Interfaces, 69, 103389.

    Article  Google Scholar 

  9. Jiang, B., Zhang, Z., Chan, W. K., Tse, T. H., & Chen, T. Y. (2012). How well does test case prioritization integrate with statistical fault localization? Information and Software Technology, 54(7), 739–758.

    Article  Google Scholar 

  10. Farooq, F., & Nadeem, A. (2017). A fault based approach to test case prioritization. In International conference on frontiers of information technology (FIT) (pp. 52–57).

  11. Wang, Y., Zhao, X., & Ding, X. (2015). An effective test case prioritization method based on fault severity. In: 6th IEEE international conference on software engineering and service science (ICSESS) (pp. 737–741).

  12. Nayak, S., Kumar, C., Tripathi, S., & Majumdar, N. (2019). An improved approach to enhance the test case prioritization efficiency. In Proceedings of ICETIT (pp. 1119–1128).

  13. Indumathi, C. P., & Selvamani, K. (2015). Test cases prioritization using open dependency structure algorithm. Procedia Computer Science, 48, 250–255.

    Article  Google Scholar 

  14. Srikanth, H., Hettiarachchi, C., & Do, H. (2016). Requirements based test prioritization using risk factors: An industrial study. Information and Software Technology, 69, 71–83.

    Article  Google Scholar 

  15. Kavitha, R., & Kavitha, V. R., & Suresh Kumar, N. (2010). Requirement based test case prioritization. In International conference on communication control and computing technologies (pp. 826–829).

  16. Dobuneh, M. R. N., Jawawi, D. N. A., Ghazali, M., & Malakooti, M. V. (2014). Development test case prioritization technique in regression testing based on hybrid criteria. In 8th Malaysian software engineering conference (MySEC) (pp. 301–305).

  17. Mohapatra, S. K., & Prasad, S. (2013). Evolutionary search algorithms for test case prioritization. In International conference on machine intelligence and research advancement (pp. 115–119).

  18. Chen, J., et al. (2018). Test case prioritization for object-oriented software: An adaptive random sequence approach based on clustering. Journal of Systems and Software, 135, 107–125.

    Article  Google Scholar 

  19. Kaliraj, S., & Bharathi, A. (2019). Path testing based reliability analysis framework of component based software system. Measurement, 144, 20–32.

    Article  Google Scholar 

  20. Mohi-Aldeen, S. M., Mohamad, R., & Deris, S. (2016). Application of Negative Selection Algorithm (NSA) for test data generation of path testing. Applied Soft Computing, 49, 1118–1128.

    Article  Google Scholar 

  21. Huang, R., Zhang, Q., Towey, D., Sun, W., & Chen, J. (2020). Regression test case prioritization by code combinations coverage. Journal of Systems and Software, 169, 110712.

    Article  Google Scholar 

  22. Li, J., Zhang, Y., & Bian, J. (2019). Defect-Oriented Test Case Prioritization. Chinese Intelligent Systems Conference, Lecture Notes in Electrical Engineering, 593, 651–659.

    Article  Google Scholar 

  23. Huang, R., et al. (2020). Abstract test case prioritization using repeated small-strength level-combination coverage. IEEE Transactions on Reliability, 69(1), 349–372.

    Article  Google Scholar 

  24. Wang, R., Li, Z., Jiang, S., & Tao, C. (2020). Regression test case prioritization based on fixed size of candidate set ART algorithm. International Journal of Software Engineering and Knowledge Engineering, 30(3), 291–320.

    Article  Google Scholar 

  25. Pradhan, D., Wang, S., Ali, S., Yue, T., & Liaaen, M. (2018). REMAP: Using rule mining and multi-objective search for dynamic test case prioritization. In IEEE 11th international conference on software testing, verification and validation (ICST) (pp. 46–57).

  26. Mahdieh, M., Mirian-Hosseinabadi, S.-H., Etemadi, K., Nosrati, A., & Jalali, S. (2020). Incorporating fault-proneness estimations into coverage-based test case prioritization methods. Information and Software Technology, 121, 106269.

    Article  Google Scholar 

  27. Wei, D., Sun, Q., Wang, X., Zhang, T., & Chen, B. (2020). A model-based test case prioritization approach based on fault urgency and severity. International Journal of Software Engineering and Knowledge Engineering, 30(2), 263–290.

    Article  Google Scholar 

  28. Eldrandaly, K., Ellatif, M. A., & Zaki, N. (2020). A proposed framework for test suite prioritization and reduction using the clustering data mining technique. Journal of Theoretical and Applied Information Technology, 98(2), 290–307.

    Google Scholar 

  29. Mahali, P., & Mohapatra, D. P. (2018). Model based test case prioritization using UML behavioural diagrams and association rule mining. International Journal of System Assurance Engineering and Management, 9(5), 1063–1079.

    Google Scholar 

  30. Wang, Y., Zhu, Z., Yang, Bo., Guo, F., & Hai, Yu. (2018). Using reliability risk analysis to prioritize test cases. Journal of Systems and Software, 139, 14–31.

    Article  Google Scholar 

  31. Khalilian, A., Azgomi, M. A., & Fazlalizadeh, Y. (2012). An improved method for test case prioritization by incorporating historical test case data. Science of Computer Programming, 78(1), 93–116.

    Article  MATH  Google Scholar 

  32. Hettiarachchi, C., Do, H., & Choi, B. (2016). Risk-based test case prioritization using a fuzzy expert system. Information and Software Technology, 69, 1–15.

    Article  Google Scholar 

  33. Huang, C.-Y., Chang, J.-R., & Chang, Y.-H. (2010). Design and analysis of GUI test-case prioritization using weight-based methods. Journal of Systems and Software, 83(4), 646–659.

    Article  Google Scholar 

  34. Yadav, D. K., & Dutta, S. (2016). Test case prioritization technique based on early fault detection using fuzzy logic. In 3rd international conference on computing for sustainable global development (INDIACom) (pp. 1033–1036).

  35. Jahan, H., Feng, Z., & Mahmud, S. M. H. (2020). Risk-based test case prioritization by correlating system methods and their associated risks. Arabian Journal for Science and Engineering, 45, 6125–6138.

    Article  Google Scholar 

  36. Ferrer, J., Kruse, P. M., Chicano, F., & Alba, E. (2015). Search based algorithms for test sequence generation in functional testing. Information and Software Technology, 58, 419–432.

    Article  Google Scholar 

  37. Lam, S. S. B., Hari Prasad Raju, M. L., Kiran, U. M., Ch, S., & Srivastav, P. R. (2012). Automated generation of independent paths and test suite optimization using artificial bee colony. Procedia Engineering, 30, 191–200.

    Article  Google Scholar 

  38. Banias, O. (2019). Test case selection-prioritization approach based on memoization dynamic programming algorithm. Information and Software Technology, 115, 119–130.

    Article  Google Scholar 

  39. Di Nucci, D., Panichella, A., Zaidman, A., & De Lucia, A. (2020). A test case prioritization genetic algorithm guided by the hypervolume indicator. IEEE Transactions on Software Engineering, 46(6), 674–696.

    Article  Google Scholar 

  40. Hemmati, H., Arcuri, A., & Briand, L. (2013). Achieving scalable model-based testing through test case diversity. ACM Transactions on Software Engineering and Methodology, 22(1), 63–78.

    Article  Google Scholar 

  41. Hemmati, H., & Briand, L. (2010). An industrial investigation of similarity measures for model-based test case selection. In Proceedings of 21st international conference on software reliability engineering (pp. 141–150).

  42. Jiang, B., & Chan, W. K. (2015). Input-based adaptive randomized test case prioritization: A local beam search approach. Journal of Systems and Software, 105, 91–106.

    Article  Google Scholar 

  43. Sayyari, F., & Emadi, S. (2015). Automated generation of software testing path based on ant colony. In International congress on technology, communication and knowledge (ICTCK) (pp. 435–440).

  44. Preeti & Chaudhary, J. (2014). An improved genetic approach for test path generation. In International conference on advances in engineering & technology research (pp. 1–5).

  45. Singh, M., Srivastava, V. M., Gaurav, K., & Gupta, P. K. (2017). Automatic test data generation based on multi-objective ant lion optimization algorithm. In: Pattern recognition association of South Africa and robotics and mechatronics (PRASA-RobMech) (pp. 168–174).

  46. Panthi, V., & Mohapatra, D. P. (2018). Firely optimization technique based test scenario generation and prioritization. Journal of Applied Research and Technology, 16, 466–483.

    Article  Google Scholar 

  47. Panthi, V., & Mohapatra, D. P. (2017). A Framework for generating prioritized test scenarios using firefly optimization. International Journal of Computing Science & Mathematics, 8(3), 228–237.

    Article  MATH  Google Scholar 

  48. Dhareula, P., & Ganpati, A. (2020). Flower pollination algorithm for test case prioritization in regression testing. ICT Analysis and Applications, Lecture Notes in Networks and Systems, 93, 155–167.

    Article  Google Scholar 

  49. Cvetković, J., & Cvetković, M. (2019). Evaluation of UML diagrams for test cases generation: Case study on depression of internet addiction. Physica A: Statistical Mechanics and its Applications, 525, 1351–1359.

    Article  Google Scholar 

  50. Vivekanandan, K., Megala, T., & Chandini, P. (2016). Automatic generation of basis test path using clonal selection algorithm. In International conference on information communication and embedded systems (ICICES) (pp. 1–4).

  51. Waheed, S. Z., & Qamar, U. (2015). Data flow based test case generation algorithm for object oriented integration testing. In 6th IEEE international conference on software engineering and service science (ICSESS) (pp. 423–427).

  52. Wijayasiriwardhane, T. K., Wijayarathna, P. G., & Karunarathna, D. D. (2011). An automated tool to generate test cases for performing basis path testing. In International conference on advances in ICT for emerging regions (ICTer) (pp. 95–101).

  53. Qingfeng, D., & Xiao, D. (2011). An improved algorithm for basis path testing. In International conference on business management and electronic information (pp. 175–178).

  54. Chi, J., et al. (2020). Relation-based test case prioritization for regression testing. Journal of Systems and Software, 163, 110539.

    Article  Google Scholar 

  55. Yadav, D. K., & Dutta, S. (2020). Regression test case selection and prioritization for object oriented software. Microsystem Technologies, 26, 1463–1477.

    Article  Google Scholar 

  56. Babu, J. S., et al. (2020). Test case prioritization for regression testing based on Cc metric analyzer. International Journal of Scientific and Technology Research, 9(2), 3345–3348.

    Google Scholar 

  57. Zhou, Z. Q., Liu, C., Chen, T. Y., Tse, T. H., & Susilo, W. (2020). Beating random test case prioritization. IEEE Transactions on Reliability, 2020, 1–22.

    Google Scholar 

  58. Pradhan, D., Wang, S., Ali, S., Yue, T., & Liaaen, M. (2019). Employing rule mining and multi-objective search for dynamic test case prioritization. Journal of Systems and Software, 153, 86–104.

    Article  Google Scholar 

Download references

Funding

No funds received for this research.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Kapil Juneja.

Ethics declarations

Conflict of interest

There is no conflict of interest, financial or others. I as sole author ensured the ethics approval and participation of the research.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Juneja, K. Design of a Novel Weighted-Multicriteria Analysis Model for Effective Test Case Prioritization for Network and Robotic Projects. Wireless Pers Commun 123, 2505–2532 (2022). https://doi.org/10.1007/s11277-021-09251-z

Download citation

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11277-021-09251-z

Keywords