Towards Automated Test Sequence Generation

The article presents a novel control-flow based test sequence generation technique using UML 2.0 activity diagram, which is a behavioral type of UML diagram. Like other model-based techniques, this technique can be used in the earlier phases of the development process owing to the availability of the design models of the system. The activity diagram model is seamlessly converted into a colored Petri net. We proposed a technique that enables the automatic generation of test sequences according to a given coverage criteria from the execution of the colored Petri nets model. Two types of structural coverage criteria for AD based models, namely sequential and concurrent coverage are described. The proposed technique was applied to an example to demonstrate its feasibility and the generated test sequences were evaluated against selected coverage criteria. This technique can potentially be adapted to service oriented applications, workflows, and concurrent applications.

[1]  Joseph Robert Horgan,et al.  Effect of Test Set Minimization on Fault Detection Effectiveness , 1995, 1995 17th International Conference on Software Engineering.

[2]  Sanjai Rayadurgam,et al.  Auto-generating Test Sequences Using Model Checkers: A Case Study , 2003, FATES.

[3]  Robert B. France,et al.  Test adequacy criteria for UML design models , 2003, Softw. Test. Verification Reliab..

[4]  Georg Kösters,et al.  Coupling Use Cases and Class Models as a Means for Validation and Verification of Requirements Specifications , 2001, Requirements Engineering.

[5]  Xiaoqing Bai,et al.  An approach to generate the thin-threads from the UML diagrams , 2004, Proceedings of the 28th Annual International Computer Software and Applications Conference, 2004. COMPSAC 2004..

[6]  Peter J. Clarke,et al.  Evaluating test adequacy coverage of high level petri nets using spin , 2008, AST '08.

[7]  Charles W. Butler,et al.  Design complexity measurement and testing , 1989, CACM.

[8]  R.-D. Yang,et al.  A path analysis approach to concurrent program testing , 1990, Ninth Annual International Phoenix Conference on Computers and Communications. 1990 Conference Proceedings.

[9]  Kuo-Chung Tai Testing of concurrent software , 1989, [1989] Proceedings of the Thirteenth Annual International Computer Software & Applications Conference.

[10]  Angelo Gargantini,et al.  Abstract State Machines, Advances in Theory and Practice, 10th International Workshop, ASM 2003, Taormina, Italy, March 3-7, 2003, Proceedings , 2003, Abstract State Machines.

[11]  Lionel C. Briand,et al.  A UML-Based Approach to System Testing , 2001, Software and Systems Modeling.

[12]  Robert B. France,et al.  A tool-supported approach to testing UML design models , 2005, 10th IEEE International Conference on Engineering of Complex Computer Systems (ICECCS'05).

[13]  Antonia Bertolino,et al.  Software Testing Research and Practice , 2003, Abstract State Machines.

[14]  Yossi Lichtenstein,et al.  Testing concurrent programs: a formal evaluation of coverage criteria , 1996, Proceedings of the Seventh Israeli Conference on Computer Systems and Software Engineering.

[15]  Roland Meyer,et al.  Compositional Semantics for UML 2.0 Sequence Diagrams Using Petri Nets , 2005, SDL Forum.

[16]  Tomohiro Kudoh,et al.  Test suite generation methods for concurrent systems based on coloured Petri nets , 1995, Proceedings 1995 Asia Pacific Software Engineering Conference.

[17]  David Lee,et al.  Conformance testing of protocols specified as communicating finite state machines-a guided random walk based approach , 1996, IEEE Trans. Commun..

[18]  Rik Eshuis,et al.  A Formal Semantics for UML Activity Diagrams - Formalising Workflow Models , 2001 .

[19]  Jens Bæk Jørgensen Coloured Petri Nets in Development of a Pervasive Health Care System , 2003, ICATPN.

[20]  Sarfraz Khurshid,et al.  Generalized Symbolic Execution for Model Checking and Testing , 2003, TACAS.

[21]  Levi Lucio,et al.  Formal Test Generation from UML Models , 2006, Research Results of the DICS Program.

[22]  Robert B. France,et al.  A Systematic Approach to Generate Inputs to Test UML Design Models , 2006, 2006 17th International Symposium on Software Reliability Engineering.

[23]  Stephan Merz,et al.  Model Checking: A Tutorial Overview , 2000, MOVEP.

[24]  Conrad E. Bock JOURNAL OF OBJECT TECHNOLOGY Online at www.jot.fm. Published by ETH Zurich, Chair of Software Engineering ©JOT, 2003 , 2022 .

[25]  Hong Zhu,et al.  A Theory of Testing High Level Petri Nets , 2000 .

[26]  Li Xuandong,et al.  Automatic test case generation for UML activity diagrams , 2006 .

[27]  Jana Koehler,et al.  Improving Business Process Models with Reference Models in Business-Driven Development , 2006, Business Process Management Workshops.

[28]  Harald Störrle,et al.  Semantics of Control-Flow in UML 2.0 Activities , 2004, 2004 IEEE Symposium on Visual Languages - Human Centric Computing.

[29]  Harry Robinson Graph Theory Techniques in Model-Based Testing , 1999 .

[30]  Hong Zhu,et al.  Software unit test coverage and adequacy , 1997, ACM Comput. Surv..

[31]  Phyllis G. Frankl,et al.  An Experimental Comparison of the Effectiveness of Branch Testing and Data Flow Testing , 1993, IEEE Trans. Software Eng..

[32]  Chiou Peng Lam,et al.  Transformation methodology for UML 2.0 activity diagram into colored Petri nets , 2007 .