Model Based Testing
Larry Apfelbaum, John R. Doyle
Abstract
Larry Apfelbaum, John R. Doyle
Abstract
www.teradyne.com/sst The use of a model to describe the behavior of a system is a proven and major advantage to test development teams. Models can be utilized in many ways throughout the product life-cycle, including: improved quality of specifications, code generation, reliability analysis, and test generation. This paper will focus on the testing benefits and review some of the historical challenges that prevented model based testing and present the solutions that overcame these challenges. In addition benefits of a model based approach are reviewed in the context of two real applications, a call processing feature and a UI of a workflow oriented database system. Outline: 1. Rationale for modeling 2. Behavioral models as a specification of a product's use 3. Test design and generation using models 4. Case study: long distance call processing feature 5. Case study: workflow based user interface / database system 6. Conclusion 1. Rationale for modeling Models are used to understand, specify and develop systems in many disciplines. From DNA and gene research to the development of the latest fighter aircraft, models are used to promote understanding and provide a reusable framework for product development. In the software engineering process, models are now accepted as part of a modern object oriented analysis and design approach by all of the major OO methodologies. Papers and books have been written about the application of models to test development and reliability analysis for over two decades; however, except for leading edge companies, test creation is still a manual process with few quantitative metrics and low reuse. The objective of this 1 Model Based Testing
OpenAlex reports 170 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
www.teradyne.com/sst The use of a model to describe the behavior of a system is a proven and major advantage to test development teams. Models can be utilized in many ways throughout the product life-cycle, including: improved quality of specifications, code generation, reliability analysis, and test generation. This paper will focus on the testing benefits and review some of the historical challenges that prevented model based testing and present the solutions that overcame these challenges. In addition benefits of a model based approach are reviewed in the context of two real applications, a call processing feature and a UI of a workflow oriented database system. Outline: 1. Rationale for modeling 2. Behavioral models as a specification of a product's use 3. Test design and generation using models 4. Case study: long distance call processing feature 5. Case study: workflow based user interface / database system 6. Conclusion 1. Rationale for modeling Models are used to understand, specify and develop systems in many disciplines. From DNA and gene research to the development of the latest fighter aircraft, models are used to promote understanding and provide a reusable framework for product development. In the software engineering process, models are now accepted as part of a modern object oriented analysis and design approach by all of the major OO methodologies. Papers and books have been written about the application of models to test development and reliability analysis for over two decades; however, except for leading edge companies, test creation is still a manual process with few quantitative metrics and low reuse. The objective of this 1 Model Based Testing
Key concepts: Computer science