Skip to main content

Test scenario prioritization for object-oriented systems using UML diagram

Abstract

The exponential growth in the complexity of product requirements has raised the importance of software testing. Software change management is one of the major challenge and regression testing provides a solution in this regard. Regresion testing is performed to find out the effect of the modified component on the other components present in the application. Here, a behavioural model i.e. an UML State Machine Diagram (SMD) is used to model the system requirements. Further, an intermediate State Machine Graph (SMG) is constructed from SMD. The test scenarios are generated by identifying the paths those are linearly independent of each other. These test scenarios are validated for code coverage using dynamic program analysis technique. Then, by traversing the SMG, nodes are identified those got affected due to the different change carried away in the software. A repository is maintained to store the information about affected nodes periodically. Next time, during regression testing, pattern of nodes those are frequently affected, are identified from the stored data and these patterns helps in test case prioritization. Two more criterias i.e. functional priority set by the client and number of times the user accessed the user interface are also added up. Further, it calculates the total priority value of a test scenarios and test-scenarios are arranged in depending upon their total priority value. Moelling dynamic nature of the application as well as applying mining on the historical data makes the proposed approach more efficient when compared with the related works.

This is a preview of subscription content, access via your institution.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7

References

  • Acharya AA, Mahali P, Mohapatra DP (2015) Model based test case prioritization using association rule mining. In: Proceedings of computational intelligence in data mining, vol 3. Springer, India, pp 429–440

  • Bahrami A (2008) Object oriented systems development: using the unified modeling language, 19th edn. Mcgraw-Hill College, India

    Google Scholar 

  • Chauhan N (2010) Software testing principles : practices. Oxford University Press, New Delhi

    Google Scholar 

  • e Zehra Haidry S, Miller T (2013) Using dependency structures for prioritization of fundamental test suites. IEEE Trans Softw Eng 39(2):258–275

    Article  Google Scholar 

  • Han J, Kamber M (2010) Data mining: concepts and techniques, 2nd edn. Morgan Kaufmann Publishers, San Francisco

    MATH  Google Scholar 

  • 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, vol. 48. IEEE, pp 886–889

  • 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

    Article  MATH  Google Scholar 

  • 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

  • Krishnamoorthi R, Mary SASA (2009) Requirement based system test case prioritization of new and regression test cases. Int J Softw Eng Knowl Eng 19(3):453

    Article  Google Scholar 

  • Mall R (2009) Fundamental of software engineering. PHI Learning Private Limited, New Delhi

    Google Scholar 

  • Mathur AP (2008) Foundations of software testing, 1st edn. Addison-Wesley Professional, Reading

    Google Scholar 

  • Pressman RS (2010) Software engineering: a practitioner’s approach, 7th edn. McGraw-Hill, New York

    MATH  Google Scholar 

  • Rothermal G, Untch RH, Chu C, HarRold MJ (2001) Prioritizing test cases for regression testing. IEEE Trans Softw Eng 27(10):929–948

    Article  Google Scholar 

  • Samuel P, Joseph AT (2008) Test sequence generation from UML sequence diagrams. In: Proceedings of 9th international conference on software engineering, artificial intelligence, networking, and parallel/distributed computing, vol 2008, pp 879–887

  • Srivastava PR, Kumar K, Raghurama G (2008) Test case prioritization based on requirements and risk factors. ACMSIGSOFT Softw Eng Notes 33(4):1–5

    Article  Google Scholar 

  • 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, TX, USA, pp 41–47

  • Yoo S, Harman M (2012) Regression testing, minimisation, selection and prioritisation: a survey. Softw Test Verification Reliab 22(2):67–120

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Namita Panda.

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

Verify currency and authenticity via CrossMark

Cite this article

Panda, N., Acharya, A.A. & Mohapatra, D.P. Test scenario prioritization for object-oriented systems using UML diagram. Int J Syst Assur Eng Manag 10, 316–325 (2019). https://doi.org/10.1007/s13198-019-00759-z

Download citation

  • Received:

  • Revised:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s13198-019-00759-z

Keywords

  • Regression testing
  • Test case prioritization
  • State machine diagram
  • Test scenarios