Practical Model-Based Testing (eBook)
456 Seiten
Elsevier Science (Verlag)
978-0-08-046648-4 (ISBN)
The book focuses on the mainstream practice of functional black-box testing and covers different styles of models, especially transition-based models (UML state machines) and pre/post models (UML/OCL specifications and B notation). The steps of applying model-based testing are demonstrated on examples and case studies from a variety of software domains, including embedded software and information systems.
From this book you will learn:
* The basic principles and terminology of model-based testing
* How model-based testing differs from other testing processes
* How model-based testing fits into typical software lifecycles such as agile methods and the Unified Process
* The benefits and limitations of model-based testing, its cost effectiveness and how it can reduce time-to-market
* A step-by-step process for applying model-based testing
* How to write good models for model-based testing
* How to use a variety of test selection criteria to control the tests that are generated from your models
* How model-based testing can connect to existing automated test execution platforms such as Mercury Test Director, Java JUnit, and proprietary test execution environments
* Presents the basic principles and terminology of model-based testing
* Shows how model-based testing fits into the software lifecycle, its cost-effectiveness, and how it can reduce time to market
* Offers guidance on how to use different kinds of modeling techniques, useful test generation strategies, how to apply model-based testing techniques to real applications using case studies
Practical Model-Based Testing gives a practical introduction to model-based testing, showing how to write models for testing purposes and how to use model-based testing tools to generate test suites. It is aimed at testers and software developers who wish to use model-based testing, rather than at tool-developers or academics. The book focuses on the mainstream practice of functional black-box testing and covers different styles of models, especially transition-based models (UML state machines) and pre/post models (UML/OCL specifications and B notation). The steps of applying model-based testing are demonstrated on examples and case studies from a variety of software domains, including embedded software and information systems. From this book you will learn:- The basic principles and terminology of model-based testing- How model-based testing differs from other testing processes- How model-based testing fits into typical software lifecycles such as agile methods and the Unified Process- The benefits and limitations of model-based testing, its cost effectiveness and how it can reduce time-to-market- A step-by-step process for applying model-based testing- How to write good models for model-based testing- How to use a variety of test selection criteria to control the tests that are generated from your models- How model-based testing can connect to existing automated test execution platforms such as Mercury Test Director, Java JUnit, and proprietary test execution environments- Presents the basic principles and terminology of model-based testing- Shows how model-based testing fits into the software lifecycle, its cost-effectiveness, and how it can reduce time to market- Offers guidance on how to use different kinds of modeling techniques, useful test generation strategies, how to apply model-based testing techniques to real applications using case studies
Front cover 1
Title page 4
Copyright page 5
Table of Contents 8
Preface 14
Acknowledgements 17
About the authors 20
Chapter 1 The challenge 22
1.1 What Do We Mean by Testing? 24
1.2 What Is Model-Based Testing? 27
1.3 A Smart Card Example 31
1.4 Summary 38
1.5 Further Reading 38
Chapter 2 The pain and the gain 40
2.1 Classic Testing Processes 40
2.2 The Model-Based Testing Process 47
2.3 Models: Build or Borrow? 52
2.4 Your Maturity Level 54
2.5 Hypothetical Case: Total Testing Hours 56
2.6 Model-Based Testing Experience Reports 61
2.7 Benefits of Model-Based Testing 69
2.8 Limitations of Model-Based Testing 75
2.9 Summary 77
2.10 Further Reading 77
Chapter 3 A model of your system 80
3.1 How to Model Your System 81
3.2 A Case Study 87
3.3 Transition-Based Models 90
3.4 Pre/Post Models in B 99
3.5 Summary 124
3.6 Further Reading 125
Chapter 4 Selecting your tests 128
4.1 Structural Model Coverage 131
4.2 Data Coverage Criteria 143
4.3 Fault-Based Criteria 151
4.4 Requirements-Based Criteria 152
4.5 Explicit Test Case Specifications 153
4.6 Statistical Test Generation Methods 154
4.7 Combining Test Selection Criteria 154
4.8 Summary 157
4.9 Further Reading 157
Chapter 5 Testing from finite state machines 160
5.1 Testing Qui-Donc with a Simple FSM 161
5.2 EFSMs and the ModelJUnit Library 178
5.3 Unit Testing ZLive with EFSMs 188
5.4 Labeled Transition Systems Models 203
5.5 Summary 204
5.6 Further Reading 205
Chapter 6 Testing from pre/post models 208
6.1 How to Write Pre/Post Models for Testing 209
6.2 The System Process Scheduler Example 213
6.3 The Triangle Example 235
6.4 Robustness Testing from a Pre/Post Model 254
6.5 Testing a Chat System with Spec Explorer 258
6.6 Summary 269
6.7 Further Reading 271
Chapter 7 Testing from UML transition-based models 272
7.1 UML Modeling Notations 273
7.2 Testing an eTheater with LTG/UML 274
7.3 Testing a Protocol with Qtronic 287
7.4 Summary 301
7.5 Further Reading 302
Chapter 8 Making tests executable 304
8.1 Principles of Test Adaptation 305
8.2 Example: The eTheater System 312
8.3 Summary 324
8.4 Further Reading 324
Chapter 9 The gsm 11.11 case study 326
9.1 Overview of the GSM 11.11 Standard 327
9.2 Modeling GSM 11.11 in B 332
9.3 Validation and Verification of the B Model 342
9.4 Generating Tests with LTG/B 344
9.5 Generating Executable Scripts 348
9.6 Test Execution 355
9.7 Summary 358
9.8 Further Reading 359
Chapter 10 The atm case study 360
10.1 Overview of the ATM System 361
10.2 Modeling the ATM System in UML 365
10.3 Generating Test Cases 378
10.4 Generating Executable Test Scripts 385
10.5 Executing the Tests 386
10.6 Summary 391
10.7 Further Reading 391
Chapter 11 Putting it into practice 392
11.1 Prerequisites for Model-Based Testing 392
11.2 Selecting a Model-Based Testing Approach 394
11.3 People, Roles, and Training 398
11.4 Model-Based Testing and Agile Methods 401
11.5 Model-Based Testing and the Unified Process 403
11.6 Epilogue 408
Appendix A Summary of B abstract machine notation 412
Appendix B Summary of common OCL constructs 418
Appendix C Commercial tools 422
Glossary 426
Bibliography 430
Index 440
Erscheint lt. Verlag | 27.7.2010 |
---|---|
Sprache | englisch |
Themenwelt | Mathematik / Informatik ► Informatik ► Programmiersprachen / -werkzeuge |
Informatik ► Software Entwicklung ► Objektorientierung | |
ISBN-10 | 0-08-046648-6 / 0080466486 |
ISBN-13 | 978-0-08-046648-4 / 9780080466484 |
Haben Sie eine Frage zum Produkt? |
Kopierschutz: Adobe-DRM
Adobe-DRM ist ein Kopierschutz, der das eBook vor Mißbrauch schützen soll. Dabei wird das eBook bereits beim Download auf Ihre persönliche Adobe-ID autorisiert. Lesen können Sie das eBook dann nur auf den Geräten, welche ebenfalls auf Ihre Adobe-ID registriert sind.
Details zum Adobe-DRM
Dateiformat: PDF (Portable Document Format)
Mit einem festen Seitenlayout eignet sich die PDF besonders für Fachbücher mit Spalten, Tabellen und Abbildungen. Eine PDF kann auf fast allen Geräten angezeigt werden, ist aber für kleine Displays (Smartphone, eReader) nur eingeschränkt geeignet.
Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen eine
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen eine
Geräteliste und zusätzliche Hinweise
Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.
aus dem Bereich