A Methodology for Building Effective Test Models with Function Nets

Building effective test models is critical to the applications of model-based testing. This paper presents a methodology for guiding model-based testing with function nets, which are lightweight high-level Petri nets. High-level Petri nets are traditionally used for modeling, simulation, and verification purposes. In this paper, however, function nets are test models for automated generation of test cases. The proposed methodology has three key features. First, based on an analogy between modeling and programming, it identifies the basic building blocks for composing test models. Second, it provides structured processes for building test models from workflows and from the contracts of the components under test. Third, it provides several techniques for reducing the complexity of test models and thus the number of tests. The methodology has been applied to the function testing and security testing of several industry-strength applications.

[1]  Yvan Labiche,et al.  A Systematic Review of Model Based Testing Tool Support , 2010 .

[2]  Dianxiang Xu,et al.  Automated Security Test Generation with Formal Threat Models , 2012, IEEE Transactions on Dependable and Secure Computing.

[3]  Hartmann J. Genrich,et al.  Predicate/Transition Nets , 1986, Advances in Petri Nets.

[4]  Kurt Jensen Coloured Petri Nets , 1992, EATCS Monographs in Theoretical Computer Science.

[5]  Pieter J. Mosterman,et al.  Model-Based Testing for Embedded Systems , 2011, Computational Analysis, Synthesis, & Design Dynamic Systems.

[6]  Dianxiang Xu,et al.  Threat-driven modeling and verification of secure software using aspect-oriented Petri nets , 2006, IEEE Transactions on Software Engineering.

[7]  Dianxiang Xu,et al.  A Tool for Automated Test Code Generation from High-Level Petri Nets , 2011, Petri Nets.