Provides a practical and comprehensive introduction to the key aspects of model-based testing as taught in the ISTQB (R) Model-Based Tester-Foundation Level Certification Syllabus This book covers the essentials of Model-Based Testing (MBT) needed to pass the ISTQB (R) Foundation Level Model-Based Tester Certification. The text begins with an introduction to MBT, covering both the benefits and the limitations of MBT. The authors review the various approaches to model-based testing, explaining the fundamental processes in MBT, the different modeling languages used, common good modeling practices, and the typical mistakes and pitfalls. The book explains the specifics of MBT test implementation, the dependencies on modeling and test generation activities, and the steps required to automate the generated test cases. The text discusses the introduction of MBT in a company, presenting metrics to measure success and good practices to apply.
Provides case studies illustrating different approaches to Model-Based Testing Includes in-text exercises to encourage readers to practice modeling and test generation activities Contains appendices with solutions to the in-text exercises, a short quiz to test readers, along with additional information Model-Based Testing Essentials - Guide to the ISTQB (R) Certified Model-Based Tester - Foundation Level is written primarily for participants of the ISTQB (R) Certification: software engineers, test engineers, software developers, and anybody else involved in software quality assurance. This book can also be used for anyone who wants a deeper understanding of software testing and of the use of models for test generation.
, Bruno Legeard
, Robert V. Binder
Country of Publication:
01 April 2016
Professional and scholarly
Foreword by Gualtiero Bazzana xi Foreword by Robert V. Binder xiii Preface xv 1 Introduction to model-based testing 1 1.1 Why do we need new approaches to testing?, 1 1.2 What is model-based testing?, 2 1.3 Benefits of MBT, 5 1.4 Pitfalls of MBT, 13 1.5 What can you realistically expect?, 19 2 What you should know about MBT before starting 21 2.1 ISTQB MBT glossary terms used in this book, 21 2.2 Other terms to know, 23 2.3 The modeling languages used in this book, 28 3 Process aspects of MBT 35 3.1 MBT and the fundamental test process, 35 3.2 The typical MBT process, 38 3.3 MBT and software development lifecycles, 49 3.4 How MBT supports requirement engineering, 55 4 Aspects to consider before you start writing an MBT model 59 4.1 Preliminary considerations on MBT modeling, 59 4.2 Subject and focus of your MBT model, 65 4.3 The influence of test objectives on MBT models, 70 5 Modeling languages - the agony of choice 75 5.1 Main categories of modeling languages, 76 5.2 UML and BPMN, 82 5.3 Other graphical modeling languages used for MBT, 85 5.4 Textual modeling languages used for MBT, 90 5.5 How to select the appropriate modeling language, 91 6 Good MBT modeling practices 97 6.1 Quality characteristics for MBT models, 97 6.2 Typical mistakes and pitfalls in MBT model design, 101 6.3 Linking requirements and process-related information to the MBT model, 103 6.4 The significance of modeling guidelines for MBT, 107 6.5 The question of reusing models from other development activities, 108 6.6 Tool support for MBT modeling activities, 112 6.7 Iterative MBT model development, 114 6.8 Other recommendations, 115 7 How MBT relates to test design techniques? 119 7.1 Equivalence partitioning and boundary value analysis, 119 7.2 Decision tables, 122 7.3 State transition testing, 123 7.4 Use case testing, 124 8 Deriving tests from an MBT model 127 8.1 Taxonomy of selection criteria, 127 8.2 Test case selection in practice, 138 8.3 Examples of coverage criteria, 140 8.4 Pros and cons of specific test selection criteria, 149 8.5 Some recommendations regarding test case selection, 152 8.6 Degree of automation in test generation, 154 9 Executing model-based tests 155 9.1 Understanding the concepts, 155 9.2 Adapting test cases for automated execution, 168 9.3 Adapting MBT artifacts due to changes, 173 10 Introducing MBT in your company 179 10.1 Five steps to MBT adoption, 179 10.2 Return-on-invest considerations, 182 10.3 Prioritize your organizational objectives, 186 10.4 How to measure progress and success?, 189 10.5 Deploying MBT, 191 10.6 Initial and running costs of MBT, 193 10.7 Integrating the tools, 196 11 Case studies 201 11.1 Enterprise IT model-based testing - OrangeHRM case study, 201 11.2 MBT for process-supporting SW - Tool validation case study, 212 11.3 MBT for security components - PKCS#11 case study, 226 12 Conclusions 241 Appendix A Solutions of exercises 245 Appendix B Test yourself 253 Appendix C Taxonomy of MBT approaches 261 Abbreviations 263 Terms and definitions 265 ISTQB terms, 265 Other terms, 267 References 269 Index 273
Anne Kramer, PhD, is Senior Consultant and Project Manager at sepp.med gmbh, a German IT service provider specializing in quality assurance. Dr. Kramer has actively participated in the elaboration of the new ISTQB (R) Certified Test Model-Based Testing Syllabus. Dr. Kramer teaches model-based testing as part of the sepp.med training portfolio. Bruno Legeard is Professor of Software Engineering at the University of Franche-Comte, co-founder and Scientific Advisor of Smartesting. Prof. Legeard is an ISTQB Certified Tester, member of the French Testing Board (CFTL) and he co-leads at ISTQB-International Software Testing Qualification Board-the writer of the new Certified Tester Model-Based Testing syllabus. He is a member of several program committees in software testing each year and an author of numerous publications in the field. In 2015, he became Program Chair of UCAAT-User Conference on Advanced Automated Testing.