Abstract
In software development life cycle, maximum effort is spent on the maintenance phase. This is due to the retesting carried out in this phase to ensure that any moderation made to the system under test (SUT) does not hamper the unchanged components of the SUT. This retesting is a part of regression testing which is performed in the maintenance phase. But in the retesting approach, all the old test cases are re-executed which leads to increase in cost and time of testing. So, test case prioritization technique is widely used to overcome this problem i.e. to keep the testing cost and time down. Test case prioritization techniques schedule the test cases for regression testing in an order that improves rate of fault detection, coverage percentage etc. To improve the fault detection rate, we propose an approach for prioritizing the test cases by using multiple modified functions and association rule mining. Since, we are doing model based testing, UML (Unified Modelling Language) behavioural diagrams such as activity diagram and sequence diagram are used to model the system. An activity sequence graph (ASG) is generated taking into account the combined features of activity diagram and sequence diagram. Then, test scenarios are generated by traversing the graph. The affected nodes and corresponding modified nodes are found out using forward slicing algorithm. The details of modified nodes and corresponding affected nodes are stored in a project repository. Then, association rule mining (ARM) is applied to the historical data to generate the frequent pattern. Finally, test cases are prioritized based on business criticality test value (BCTV) and frequent pattern. We have also verified the effectiveness of proposed approach by determining the percentage of fault detection.
Similar content being viewed by others
References
1990. IEEE Standard Glossary of Software Engineering Terminology. www.ieeexplore.ieee.org/ IEEE Standard Glossary of Software Engineering Terminology
Acharya AA, Mahali P, Mohapatra DP (2015) Model based test case prioritization using association rule mining. Comput Intell Data Min 3:429–440
Aggrawal KK, Singh Y, Kaur A (2004) Code coverage based technique for prioritizing test cases for regression testing. ACM SIGSOFT Softw Eng Notes 29(5):1–4
Askarunisa A, Shanmugariya L, Ramaraj N (2010) Cost and coverage metrics for measuring the effectiveness of test case prioritization techniques. INFOCOMP J Comput Sci 9(1):43–52
Chauhan N (2016) Software testing principles : practices, 2nd edn. Oxford University Press, New Delhi
Coremen TH, Leiserson CE, Rivest RL, Stein C (2010) Introduction to algorithms, 2nd edn. PHI Learning Private Limited, New Delhi
Garg D, Datta A, French T (2012) New test case prioritization strategies for regression testing of web applications. Int J Syst Assur Eng Manag 3(4):300–309
Han J, Kamber M (2010) Data mining: concepts and techniques. Morgan Kaufmann Publishers, 500 Sansome Street, Suite 400, San Francisco, CA 94111, 2nd edition
Han X, Zeng H, Gao H (2012) A heuristic model-based test prioritization method for regression testing. In: Proceedings of international symposium on computer, consumer and control, IEEE, pp 886–889
Huang Y-C, Peng K-i, Huang C-Y (2012) A history-based cost-cognizent test case prioritization in regression testing. J Syst Softw 85:626–637
Indumathi CP, Selvamani K (2015) Test case prioritization using open dependency structure algorithm. In: Proceedings of international conference on intelligent computing, communication and convergence (ICCC-2015), Procedia Computer Science, vol 48. Elsevier, pp 250–255
Khalilian A, Azgomi MA, Fazlalizadeh Y (2012) A improved method for test case prioritization by incorporating historical test data. Sci Comput Program 78:93–116
Khandai S, Acharya AA, Mohapatra DP (2011) Prioritizing test cases using business test criticality value. Int J Adv Comput Sci Appl 3(5):103–110
Korel B, Koutsogiannakis G (2009) Experimental comparison of code-based and model-based test prioritization. In: Proceedings of IEEE international conference on software testing verification and validation workshops, pp 77–84
Mall R (2014) Fundamental of software engineering, 4th edn. PHI Learning Private Limited, New Delhi
Mathur AP (2008) Foundations of software testing, 1st edn. Addison-Wesley Professional, Boston
Muthusamy T, Seetharaman K (2014) A new effective test case prioritization for regression testing based on prioritization algorithm. Int J Appl Inf Syst (IJAIS) 6(7):21–26
Pandey AK, Shrivastava V (2011) Early fault detection model using integrated and cost-effective test case prioritization. Int J Syst Assur Eng Manag 2(1):41–47
Rava M, Wan-Kadir WMN (2016) A review on prioritization techniques in regression testing. Int J Softw Eng Appl 10(1):221–232
Samanta D, Kundu D (2008) A novel approach to generate test cases from UML activity diagrams. J Object Technol 8(3):65–83
Sarma M, Mall R (2007) Automatic test case generation from UML models. In: Proceedings of 10th international conference on information technology, pp 196–201
Shahid M, Ibrahim S (2014) A new code based test case prioritization technique. Int J Softw Eng Appl 8(6):31–38
Solanki S (2017) A review an advance approach for test case prioritization for regression testing. Int J Emerg Trends Technol Comput Sci (IJETTCS) 6(1):62–65
Swain SK, Mohapatra DP (2010) Test case generation from behavioural UML models. Int J Comput Appl 6(8):5–11
Tyagi M, Malhotra S (2015) An approach for test case prioritization based on three factors. Int J Inf Technol Comput Sci 4:79–86
Wang X, Zeng H (2016) History-based dynamic test case prioritization for requirement properties in regression testing. In: Proceedings of international workshop on continuous software evolution and delivery, Austin, pp 41–47
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Mahali, P., Mohapatra, D.P. Model based test case prioritization using UML behavioural diagrams and association rule mining. Int J Syst Assur Eng Manag 9, 1063–1079 (2018). https://doi.org/10.1007/s13198-018-0736-7
Received:
Revised:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s13198-018-0736-7