Abstract
Traditional test case generation approaches focus on design and implementation models while a large percentage of software errors are caused by the lack of understanding in the early phases. One of the most important models in the early phases of software development is business process model which closely resembles the real world and captures the requirements precisely. The aim of this paper is to present a model-based approach to automatically generate test cases from business process models. We first model business processes and convert them to state graphs. Then, the graphs are traversed and transformed to the input format of the “Spec explorer” tool that generates the test cases. Furthermore, we conduct a study to evaluate the impact of process characterizations on the performance of the proposed method.
Similar content being viewed by others
References
De Cleva Farto G, Endo AT (2015) Evaluating the model-based testing approach in the context of mobile applications. Electron Notes Theor Comput Sci 314:3–21
Backlund A (2010) Utilizing statistics in a model-based testing process. Dissertation, Department of Information Technologies, Abo Akademi University
Boghdady PN, Badr N, Hashem M, Tolba MF (2011) Test case generation and test data extraction techniques. Int J Electr Comput Sci (IJECS-IJENS) 11(03):87–94
Abdurazik A, Offutt J (2000) Using UML collaboration diagrams for static checking and test generation. In: International conference on the unified modeling language, pp 383–395
Nam DH, Mousset EC, Levy DC (2006) Automating the testing of object behavior: a state chart-driven approach. In: Proceedings of world academy of science, engineering and technology, Helsinki, Finland
Pretschner A, Philipps J (2005) 10 methodological issues in model-based testing. In: Model-based testing of reactive systems, pp 281–291
El-Far IK, Whittaker JA (2001) Model-based software testing. In: Marciniak JJ (ed) Encyclopedia of software engineering. Wiley
Badreddin O, Sturm A, Lethbridge TC (2014) Requirement traceability: a model-based approach. In: IEEE 4th international model-driven requirements engineering workshop (MoDRE), pp 87–91
Alshazly AA, Elfatatry AM, Abougabal MS (2014) Detecting defects in software requirements specification. Alex Eng J 53(3):513–527
Utting M, Pretschner A, Legeard B (2012) A taxonomy of model-based testing approaches. Softw Test Verif Reliab 22(5):297–312
Parsa S, Amiri MJ, Ebrahimifard A, Arani MK (2016) Towards a goal-driven method for web service choreography validation. In: 2nd IEEE international conference on web research, pp 66–71
De la Vera Gonzalez JL, & Diaz JS (2007) Business process-driven requirements engineering: a goal-based approach. In: Proceedings of the 8th workshop on business process modeling
Yu ES (1997) Towards modelling and reasoning support for early-phase requirements engineering. In: Proceedings of the 3rd IEEE international symposium on requirements engineering, pp 226–235
Ebrahimifard A, Amiri MJ, Arani MK, Parsa S (2016) Mapping BPMN 2.0 choreography to WS-CDL: a systematic method. J E Technol 7(1):1–23
Muehlen MZ, Indulska M, Kamp G (2007) Business process and business rule modeling: a representational analysis. In: Eleventh international IEEE EDOC workshop, pp 189–196
Roser S, Bauer B (2005) A categorization of collaborative business process modeling techniques. In: 7th IEEE international conference on E-Commerce technology, pp 43–51
Anand S, Burke EK, Chen TY, Clark J, Cohen MB, Grieskamp W, Harman M, Harrold MJ, McMinn P (2013) An orchestrated survey of methodologies for automated software test case generation. J Syst Softw 86(8):1978–2001
Business Process Model and Notation (BPMN), Version 2.0. OMG Specification, Object Management Group, August 2013
Spec Explorer tool. http://research.microsoft.com/specexplorer, public release January 2005. Accessed 19 May 2018
Mohalik S, Gadkari AA, Yeolekar A, Shashidhar KC, Ramesh S (2014) Automatic test case generation from Simulink/Stateflow models using model checking. Softw Test Verif Reliab 24(2):155–180
Nayak A, Samanta D (2010) Automatic test data synthesis using UML sequence diagrams. J Object Technol 9(2):75–104
Sarma M, Mall R (2007) Automatic test case generation from UML models. In: 10th IEEE international conference on information technology (ICIT), pp 196–201
Winter M (1999) Quality assurance for object-oriented software, requirements engineering, and testing wrt requirements specification. Dissertation, University of Hagen
Myers GJ, Corey S, Tom B (2011) The art of software testing. Wiley, London
Pechtanun K, Kansomkeat S (2012) Generation test case from UML activity diagram based on AC grammar. In: IEEE international conference on computer & information science (ICCIS), vol 2, pp 895–899
Swain R, Panthi V, Behera PK, Mohapatra DP (2012) Automatic test case generation from UML state chart diagram. Int J Comput Appl 42(7):26–36
Bertolino A (2003) Software Testing Research and Practice. In: Börger E, Gargantini A, Riccobene E (eds) Abstract State Machines 2003. ASM 2003. Lecture Notes in Computer Science, vol 2589. Springer, Berlin, Heidelberg
Offutt J, Abdurazik A (1999) Generating Tests from UML Specifications. In: France R, Rumpe B (eds) «UML»’99 — The Unified Modeling Language. UML 1999. Lecture Notes in Computer Science, vol 1723. Springer, Berlin, Heidelberg
Kim YG, Hong HS, Bae DH, Cha SD (1999) Test cases generation from UML state diagram. IEEE Proc Softw 146:187–192
Sokenou D (2006) Generating test sequences from UML sequence diagrams and state diagrams. GI Jahrestagung 2:236–240
Kansomkeat S, Offutt J, Abdurazik A, Baldini A (2008) A comparative evaluation of tests generated from different UML diagrams. In: Ninth ACIS international conference on software engineering, artificial intelligence, networking, and parallel/distributed computing, SNPD’08, pp 867–872
Granda MF (2014) An experiment design for validating a test case generation strategy from requirements models. In: 2014 IEEE 4th international workshop on empirical requirements engineering (EmpiRE), pp 44–47
Swain SK, Mohapatra DP, Mall R (2010) Test case generation based on state and activity models. J Object Technol 9(5):1–27
Yuan Y, Li Z, Sun W (2006) A graph-search based approach to BPEL4WS test generation. In: International conference on software engineering advances, pp 14–22
Hauser R, Koehler J (2004) Compiling process graphs into executable code. In: International conference on generative programming and component engineering (GPCE), pp 317–336
Cruz EF, Machado RJ, Santos MY (2014) From business process models to use case models: a systematic approach. In: Enterprise engineering working conference, pp 167–181
Dijkman RM, Joosten SM, Utopics OF (2002) An algorithm to derive use case diagrams from business process models. In: Proceedings of the 6th international conference on software engineering and applications (SEA), pp 679–684
Liew P, Kontogiannis K, Tong T (2005) A framework for business model driven development. In: The 12th IEEE international workshop on software technology and engineering practice (STEP), pp 1–8
Abilov M, Gomez JM (2014) Derivation of event-based state machines from business processes. In: Proceedings of the international conference on new trends in information and communication technologies
Chinosi M, Trombetta A (2012) A. BPMN: an introduction to the standard. Comput Stand Interfaces 34(1):124–134
Amiri MJ, Parsa S, Mohammadzade Lajevardi A (2016) Multifaceted service identification: process, requirement and data. Comput Sci Inf Syst 13(2):335–358
Amiri MJ, Koupaee M (2017) Data-driven business process similarity. IET Softw 11(6):309–318
Sun Y, Su J (2011) Computing degree of parallelism for BPMN processes. In: International conference on service-oriented computing (ICSOC), pp 1–15
Liu R, Kumar A (2005) An analysis and taxonomy of unstructured workflows. In: international conference on business process management (BPM), pp 268–284
Veanes M, Campbell C, Grieskamp W, Schulte W, Tillmann N, Nachmanson L (2008) Model-based testing of object-oriented reactive systems with Spec Explorer. In: Hierons RM, Bowen JP, Harman M (eds) Formal Methods and Testing. Lecture Notes in Computer Science, vol 4949. Springer, Berlin, Heidelberg
Activiti tool documentation. https://github.com/Activiti/activiti-examples. Accessed 19 May 2018
Camunda tool documentation. https://camunda.org/examples/. Accessed 19 May 2018
Eshuis R, Kumar A (2016) Converting unstructured into semi-structured process models. Data Knowl Eng 101:43–61
Polyvyanyy A, García-Bañuelos L, Dumas M (2010) Structuring acyclic process models. In: international conference on business process management (BPM), pp 276–293
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Yazdani Seqerloo, A., Amiri, M.J., Parsa, S. et al. Automatic test cases generation from business process models. Requirements Eng 24, 119–132 (2019). https://doi.org/10.1007/s00766-018-0304-3
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00766-018-0304-3