Petri net based test case generation for evolved specification

Abstract

Model-based testing can use a model to test a concrete program’s implementation. When the model is changed due to the evolution of the specification, it is important to maintain the test suites up to date, such that it can be used for regression testing. A complete regeneration of the whole test suite from the new model, although inefficient, is still frequently used in practice. To address this problem effectively, we propose a test case reusability analysis technique to identify reusable test cases of the original test suite based on graph analysis, such that we can generate new test cases to cover only the change-related parts of the new model. The Market Information System (MIS) is employed to demonstrate the feasibility and effectiveness of the proposed method. Our experimental results show that the use of our method saves about 31.5% test case generation cost.

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

References

  1. 1

    Tahat L H, Bader A, Vaysburg B, et al. Requirement based automated black-box test generation. In: Proceedings of the 25th Annual International Computer Software and Applications Conference, Chicago, 2001. 489–495

    Google Scholar 

  2. 2

    Korel B, Tahat L H, Vaysburg B. Model based regression test reduction using dependence analysis. In: Proceedings of the IEEE International Conference on Software Maintenance. Los Alamitos: IEEE, 2002. 214–223

    Google Scholar 

  3. 3

    Jiang B, Tse T H, Grieskamp W, et al. Regression testing process improvement for specification evolution of real-world protocol software. In: Proceedings of the 10th International Conference on Quality Software, Zhangjiajie, 2010. 62–71

    Google Scholar 

  4. 4

    Garey M R, Johnson D S. Computers and Intractability: a Guide to the Theory of NP-completeness. New York: W. H. Freeman, 1979

    Google Scholar 

  5. 5

    Ding Z H, Jiang M Y. Model driven synthesis of behavioral models from textual use cases. Inform Control Automat Robot, 2011, 132: 713–717

    Article  Google Scholar 

  6. 6

    Cockburn A. Writing Effective Use Cases. Upper Saddle River: Addison-Wesley, 2001

    Google Scholar 

  7. 7

    Somé S. Petri nets based formalization of textual use cases. Technical Report TR-2007-11. University of Ottawa, 2007

  8. 8

    Ding Z H, Jiang M Y, Zhou M C. Generating Petri net-based behavioral models from textual use cases and application in railway networks. IEEE Trans Intell Transp Syst, 2016, doi: 10.1109/TITS.2016.2518745

    Google Scholar 

  9. 9

    Sinha A, Amit P, Clay W. On generating EFSM models from use cases, scenarios and state machines. In: Proceedings of the 6th International Workshop on Scenarios and State Machines. Washington, DC: IEEE, 2007. 1

    Google Scholar 

  10. 10

    Singh S K, Gupta R, Sabharwal S, et al. Automatic extraction of events from textual requirements specification. In: Proceedings of the World Congress on Nature & Biologically Inspired Computing, Coimbatore, 2009. 415–420

    Google Scholar 

  11. 11

    Myers G J. The Art of Software Testing. 3rd ed. Hoboken: John Wiley & Sons, 2011

    Google Scholar 

  12. 12

    Plasil F, Vladimir M. Use cases: assembling “whole picture” behavior. TR 02/11. Department of Computer Science, University of New Hampshire, 2011

    Google Scholar 

  13. 13

    Biswas S, Mall R, Satpathy M, et al. Regression test selection techniques: a survey. Informatica, 2011, 35: 289–321

    Google Scholar 

  14. 14

    Engstrom E, Runeson P, Skoglund M. A systematic review on regression test selection techniques. Inform Softw Technol, 2010, 52: 14–30

    Article  Google Scholar 

  15. 15

    Yoo S, Harman M. Regression testing minimization, selection and prioritization: a survey. Softw Test Verif Reliab, 2012, 22: 67–120

    Article  Google Scholar 

  16. 16

    Panigrahi C R, Mall R. Model-based regression test case prioritization. ACM SIGSOFT Softw Eng Notes, 2010, 35: 6

    Article  Google Scholar 

  17. 17

    Rothermel G, Harrold M J. A safe, efficient regression test selection technique. ACM Trans Softw Eng Methodol, 1997, 6: 173–210

    Article  Google Scholar 

  18. 18

    von Mayrhauser A, Zhang N. Automated regression testing using DBT and Sleuth. J Softw Maint, 1999, 11: 2

    Google Scholar 

  19. 19

    Graves T L, Harrold M J, Kim J-M, et al. An empirical study of regression test selection techniques. ACM Trans Softw Eng Methodol, 2001, 10: 184–208

    Article  MATH  Google Scholar 

  20. 20

    Chakrabarti S K, Srikant Y N. Specification based regression testing using explicit state space enumeration. In: Proceedings of the International Conference on Software Engineering Advances, Tahiti, 2006. 20

    Google Scholar 

  21. 21

    Farooq Q, Iqbal M, Malik Z I, et al. An approach for selective state machine based regression testing. In: Proceedings of the 3rd International Workshop on Advances in Model-Based Testing. New York: ACM, 2007. 44–52

    Google Scholar 

  22. 22

    Naslavsky L, Ziv H, Richardson D J. A model-based regression test selection technique. In: Proceedings of International Conference on Software Maintenance, Edmonton, 2009. 515–518

    Google Scholar 

  23. 23

    Chen Y P, Probert R L, Sims D P. Specification-based regression test selection with risk analysis. In: Proceedings of the Conference of the Centre for Advanced Studies on Collaborative Research, Indianapolis, 2002. 1

    Google Scholar 

  24. 24

    Briand L C, Labiche Y, He S. Automating regression test selection based on UML designs. Inf Softw Technol, 2009, 51: 16–30

    Article  Google Scholar 

  25. 25

    Tao C Q, Li B X, Gao J. A systematic state-based approach to regression testing of component software. J Softw, 2013, 8: 560–571

    Article  Google Scholar 

  26. 26

    Orso A, Harrold M J, Rosenblum D, et al. Using component metacontents to support the regression testing of component-based software. In: Proceedings of the IEEE International Conference on Software Maintenance, Florence, 2001. 716–725

    Google Scholar 

  27. 27

    Zheng J, Robinson B, Williams L, et al. Applying regression test selection for COTS-based applications. In: Proceedings of the 28th IEEE International Conference on Software Engineering, Shanghai, 2006. 512–521

    Google Scholar 

Download references

Author information

Affiliations

Authors

Corresponding author

Correspondence to Zuohua Ding.

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Ding, Z., Jiang, M., Chen, H. et al. Petri net based test case generation for evolved specification. Sci. China Inf. Sci. 59, 080105 (2016). https://doi.org/10.1007/s11432-016-5598-5

Download citation

Keywords

  • test case generation
  • regression testing
  • evolved specification
  • Petri net
  • reachability graph