HOME > 상세정보

상세정보

Practical model-based testing [electronic resource] : a tools approach

Practical model-based testing [electronic resource] : a tools approach

자료유형
E-Book(소장)
개인저자
Utting, Mark. Legeard, Bruno.
서명 / 저자사항
Practical model-based testing [electronic resource] : a tools approach / Mark Utting, Bruno Legeard.
발행사항
Amsterdam ;   Boston :   Morgan Kaufmann Publishers,   2007.  
형태사항
1 online resource (xix, 433 p.) : ill.
기타형태 저록
Print version:   Utting, Mark.   Practical model-based testing.   Amsterdam ; Boston : Morgan Kaufmann Publishers, 2007   9780123725011   0123725011   (211009) 000045330162  
ISBN
9780123725011 0123725011 0080466486 9780080466484
요약
This book 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.
일반주기
Title from e-Book title page.  
내용주기
1 The Challenge; 2 The Pain and the Gain; 3 A Model of your System; 4 Selecting your Tests; 5 Testing from Finite State Machines; 6 Testing from Pre/Post Models; 7 Testing from UML Models; 8 Making Tests Executable; 9 The GSM 11.11 Case Study; 10 The ATM Case Study; 11 Putting it into Practice; Appendix; Index.
서지주기
Includes bibliographical references (p. 409-418) and index.
이용가능한 다른형태자료
Issued also as a book.  
일반주제명
Computer software --Testing. Computer software --Testing --Automation.
바로가기
ScienceDirect   URL
000 00000cam u2200205 a 4500
001 000045946672
005 20180711175657
006 m d
007 cr
008 070806s2007 ne a ob 001 0 eng d
019 ▼a 171113888 ▼a 507458120 ▼a 856952089
020 ▼a 9780123725011
020 ▼a 0123725011
020 ▼a 0080466486
020 ▼a 9780080466484
035 ▼a (OCoLC)162573913 ▼z (OCoLC)171113888 ▼z (OCoLC)507458120 ▼z (OCoLC)856952089
040 ▼a OPELS ▼b eng ▼e pn ▼c OPELS ▼d OCLCQ ▼d OCLCO ▼d YDXCP ▼d OSU ▼d DEBSZ ▼d ZCU ▼d OCLCQ ▼d MERUC ▼d OCLCQ ▼d 211009
049 ▼a TEFA
050 0 0 ▼a QA76.76.T48 ▼b U98 2007
082 0 0 ▼a 005.3028/7 ▼2 23
084 ▼a 005.30287 ▼2 DDCK
090 ▼a 005.30287
100 1 ▼a Utting, Mark.
245 1 0 ▼a Practical model-based testing ▼h [electronic resource] : ▼b a tools approach / ▼c Mark Utting, Bruno Legeard.
260 ▼a Amsterdam ; ▼a Boston : ▼b Morgan Kaufmann Publishers, ▼c 2007.
300 ▼a 1 online resource (xix, 433 p.) : ▼b ill.
500 ▼a Title from e-Book title page.
504 ▼a Includes bibliographical references (p. 409-418) and index.
505 0 ▼a 1 The Challenge; 2 The Pain and the Gain; 3 A Model of your System; 4 Selecting your Tests; 5 Testing from Finite State Machines; 6 Testing from Pre/Post Models; 7 Testing from UML Models; 8 Making Tests Executable; 9 The GSM 11.11 Case Study; 10 The ATM Case Study; 11 Putting it into Practice; Appendix; Index.
520 ▼a This book 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.
530 ▼a Issued also as a book.
538 ▼a Mode of access: World Wide Web.
650 0 ▼a Computer software ▼x Testing.
650 0 ▼a Computer software ▼x Testing ▼x Automation.
700 1 ▼a Legeard, Bruno.
776 0 8 ▼i Print version: ▼a Utting, Mark. ▼t Practical model-based testing. ▼d Amsterdam ; Boston : Morgan Kaufmann Publishers, 2007 ▼z 9780123725011 ▼z 0123725011 ▼w (211009) 000045330162
856 4 0 ▼3 ScienceDirect ▼u https://oca.korea.ac.kr/link.n2s?url=http://www.sciencedirect.com/science/book/9780123725011
945 ▼a KLPA
991 ▼a E-Book(소장)

소장정보

No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 중앙도서관/e-Book 컬렉션/ 청구기호 CR 005.30287 등록번호 E14003497 도서상태 대출불가(열람가능) 반납예정일 예약 서비스 M

컨텐츠정보

책소개

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


Reviews

"This topic is hot...and both authors are well known experts in the community of model-based testing." ?Wolfgang Grieskamp, Microsoft Research

Feature

  • 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



정보제공 : Aladin

목차

Preface	p. XIII
About the Authors	p. XIX
1	The Challenge	p. 1
1.1	    What Do We Mean by Testing?	p. 3
1.2	    What Is Model-Based Testing?	p. 6
1.3	    A Smart Card Example	p. 10
1.4	    Summary	p. 17
1.5	    Further Reading	p. 17
2	The Pain and the Gain	p. 19
2.1	    Classic Testing Processes	p. 19
2.1.1	        A Manual Testing Process	p. 20
2.1.2	        A Capture/Replay Testing Process	p. 22
2.1.3	        A Script-Based Testing Process	p. 23
2.1.4	        A Keyword-Driven Automated Testing Process	p. 24
2.1.5	        Solved and Remaining Problems	p. 25
2.2	    The Model-Based Testing Process	p. 26
2.3	    Models: Build or Borrow?	p. 31
2.4	    Your Maturity Level	p. 33
2.4.1	        Your Testing Maturity Level	p. 33
2.4.2	        Your Modeling Maturity Level	p. 34
2.5	    Hypothetical Case: Total Testing Hours	p. 35
2.5.1	        Assumptions	p. 36
2.5.2	        Conclusions	p. 38
2.6	    Model-Based Testing Experience Reports	p. 40
2.6.1	        Model-Based Testing at IBM	p. 40
2.6.2	        Model-Based Testing at Microsoft	p. 41
2.6.3	        Model-Based Testing in the Smart Card Industry	p. 43
2.6.4	        Model-Based Testing in the Automotive Industry	p. 47
2.7	    Benefits of Model-Based Testing	p. 48
2.7.1	        SUT Fault Detection	p. 48
2.7.2	        Reduced Testing Cost and Time	p. 49
2.7.3	        Improved Test Quality	p. 50
2.7.4	        Requirements Defect Detection	p. 51
2.7.5	        Traceability	p. 52
2.7.6	        Requirements Evolution	p. 54
2.8	    Limitations of Model-Based Testing	p. 54
2.9	    Summary	p. 56
2.10	    Further Reading	p. 56
3	A Model of Your System	p. 59
3.1	    How to Model Your System	p. 60
3.1.1	        Notations for Modeling	p. 62
3.1.2	        Choosing a Notation	p. 64
3.2	    A Case Study	p. 66
3.2.1	        DVM Requirements	p. 66
3.2.2	        DVM High-level Design	p. 66
3.3	    Transition-Based Models	p. 69
3.3.1	        Finite State Machines	p. 69
3.3.2	        Overview and History of Statecharts	p. 70
3.3.3	        UML State Machines	p. 72
3.3.4	        The UML Object Constraint Language	p. 75
3.4	    Pre/Post Models in B	p. 78
3.4.1	        The Complete B Method	p. 78
3.4.2	        A Simple Drink Vending Machine	p. 79
3.4.3	        Overview of B Machines	p. 82
3.4.4	        The B Toolkit	p. 85
3.4.5	        A Richer DVM Model	p. 91
3.4.6	        Other Pre/Post Notations	p. 98
3.5	    Summary	p. 103
3.6	    Further Reading	p. 104
4	Selecting Your Tests	p. 107
4.1	    Structural Model Coverage	p. 110
4.1.1	        Control-Flow-Oriented Coverage Criteria	p. 111
4.1.2	        Data-Flow-Oriented Coverage Criteria	p. 114
4.1.3	        Transition-Based Coverage Criteria	p. 115
4.1.4	        UML-Based Coverage Criteria	p. 120
4.2	    Data Coverage Criteria	p. 122
4.2.1	        Boundary Value Testing	p. 123
4.2.2	        Statistical Data Coverage	p. 127
4.2.3	        Pairwise Testing	p. 128
4.3	    Fault-Based Criteria	p. 130
4.4	    Requirements-Based Criteria	p. 131
4.5	    Explicit Test Case Specifications	p. 132
4.6	    Statistical Test Generation Methods	p. 133
4.7	    Combining Test Selection Criteria	p. 133
4.8	    Summary	p. 136
4.9	    Further Reading	p. 136
5	Testing from Finite State Machines	p. 139
5.1	    Testing Qui-Donc with a Simple FSM	p. 140
5.1.1	        Informal Requirements	p. 140
5.1.2	        Modeling Qui-Donc with an FSM	p. 141
5.1.3	        Generating Tests	p. 148
5.1.4	        Complete Testing Methods	p. 155
5.2	    EFSMs and the ModelJUnit Library	p. 157
5.2.1	        Extended Finite State Machines	p. 157
5.2.2	        The ModelJUnit Library	p. 160
5.2.3	        An EFSM Model of Qui-Donc	p. 162
5.3	    Unit Testing ZLive with EFSMs	p. 167
5.3.1	        The System under Test: ZLive FlatPred	p. 168
5.3.2	    A Family of Models	p. 169
5.3.3	        Encoding FlatPredModel in Java	p. 175
5.3.4	        Test Results	p. 179
5.4	    Labeled Transition Systems Models	p. 182
5.5	    Summary	p. 183
5.6	    Further Reading	p. 184
6	Testing from Pre/Post Models	p. 187
6.1	    How to Write Pre/Post Models for Testing	p. 188
6.1.1	        Adding Requirements Tags	p. 191
6.2	    The System Process Scheduler Example	p. 192
6.2.1	        Functional Requirements	p. 192
6.2.2	        Modeling the Scheduler	p. 194
6.2.3	        An Introduction to Test Targets	p. 200
6.2.4	        Test Selection for the Scheduler	p. 203
6.2.5	        Understanding the Test Targets	p. 204
6.2.6	        Test Case Generation Using LTG/B	p. 205
6.2.7	        Traceability between Requirements and Test Cases	p. 207
6.2.8	        Generating More Tests	p. 208
6.3	    The Triangle Example	p. 214
6.3.1	        Informal Specification and Formal Models	p. 214
6.3.2	        The High-Level Triangle Model	p. 215
6.3.3	        Test Generation for Compound Decisions	p. 217
6.3.4	        Evaluation of the Generated Test Suites	p. 227
6.4	    Robustness Testing from a Pre/Post Model	p. 233
6.4.1	        Syntactic Modeling and Format Testing	p. 234
6.5	    Testing a Chat System with Spec Explorer	p. 237
6.5.1	        An Overview of Spec Explorer	p. 240
6.5.2	        The Chat System	p. 242
6.5.3	        The Spec# Model	p. 242
6.5.4	        Test Generation with Spec Explorer	p. 245
6.6	    Summary	p. 248
6.7	    Further Reading	p. 250
7	Testing from UML Transition-Based Models	p. 251
7.1	    UML Modeling Notations	p. 252
7.2	    Testing an eTheater with LTG/UML	p. 253
7.2.1	        Requirements	p. 253
7.2.2	        Assumptions for the Test Model	p. 257
7.2.3	        A UML Model of eTheater	p. 257
7.2.4	        Generating Tests Using LEIRIOS LTG/UML	p. 261
7.2.5	        Generating Better Test Suites	p. 263
7.3	    Testing a Protocol with Qtronic	p. 266
7.3.1	        Protocol	p. 267
7.3.2	        Model	p. 267
7.3.3	        Importing the Model into Qtronic	p. 277
7.3.4	        Connecting Qtronic to the SUT	p. 277
7.3.5	        Generating and Running Tests	p. 279
7.4	    Summary	p. 280
7.5	    Further Reading	p. 281
8	Making Tests Executable	p. 283
8.1	    Principles of Test Adaptation	p. 284
8.1.1	        The Adaptation Approach	p. 286
8.1.2	        The Transformation Approach	p. 288
8.1.3	        Which Approach Is Better?	p. 290
8.2	    Example: The eTheater System	p. 291
8.2.1	        Transforming Tests into Ruby	p. 295
8.2.2	        Writing a Ruby Adapter for eTheater	p. 297
8.2.3	        Executing the eTheater Tests	p. 300
8.3	    Summary	p. 303
8.4	    Further Reading	p. 303
9	The GSM 11.11 Case Study	p. 305
9.1	    Overview of the GSM 11.11 Standard	p. 306
9.1.1	        Selected Files	p. 307
9.1.2	        Security Aspects	p. 308
9.1.3	        Selected Commands	p. 309
9.2	    Modeling GSM 11.11 in B	p. 311
9.2.1	        Abstracting the Behavior	p. 311
9.2.2	        The Data Model	p. 312
9.2.3	        The Operational Model	p. 316
9.3	    Validation and Verification of the B Model	p. 321
9.3.1	        Validation by Animation	p. 321
9.3.2	        Model Verification	p. 322
9.4	    Generating Tests with LTG/B	p. 323
9.4.1	        Model Coverage Criteria and Test Generation Parameters	p. 324
9.4.2	        Computing Test Targets	p. 324
9.4.3	        Generating Test Cases	p. 327
9.5	    Generating Executable Scripts	p. 327
9.5.1	        LTG Test Script Generator	p. 328
9.5.2	        GSM 11.11 Adaptation Layer	p. 332
9.6	    Test Execution	p. 334
9.7	    Summary	p. 337
9.8	    Further Reading	p. 338
10	The ATM Case Study	p. 339
10.1	    Overview of the ATM System	p. 340
10.2	    Modeling the ATM System in UML	p. 344
10.2.1	        Class Diagrams	p. 344
10.2.2	        Modeling Behavior with State Machines and OCL	p. 349
10.2.3	        Comparing the Design and Test Models	p. 355
10.3	    Generating Test Cases	p. 357
10.3.1	        Initial State for Test Generation	p. 357
10.3.2	        Generation of Test Cases	p. 359
10.3.3	        Discussion	p. 359
10.4	    Generating Executable Test Scripts	p. 364
10.5	    Executing the Tests	p. 365
10.6	    Summary	p. 370
10.7	    Further Reading	p. 370
11	Putting It into Practice	p. 371
11.1	    Prerequisites for Model-Based Testing	p. 371
11.2	    Selecting a Model-Based Testing Approach	p. 373
11.3	    People, Roles, and Training	p. 377
11.4	    Model-Based Testing and Agile Methods	p. 380
11.4.1	        Test-Driven Development	p. 380
11.4.2	        Acceptance Tests and the Iterative Process	p. 381
11.4.3	        Agile Modeling	p. 382
11.5	    Model-Based Testing and the Unified Process	p. 382
11.5.1	        Introducing the Unified Process	p. 383
11.5.2	        Extending the Unified Process with Model-Based Testing	p. 384
11.6	    Epilogue	p. 387
11.6.1	        Model-Based Testing	p. 387
11.6.2	        Future Trends	p. 388
A	Summary of B Abstract Machine Notation	p. 391
    Machine Structure	p. 391
    Logical Predicates (P, Q)	p. 392
    Numbers (n, m)	p. 392
    Sets (S, T)	p. 392
    Relations (r)	p. 393
    Functions (f)	p. 393
    Commands and Substitutions (G H, I, J)	p. 393
B	Summary of Common OCL Constructs	p. 397
    Basic OCL Types	p. 397
    OCL Collections	p. 398
C	Commercial Tools	p. 401
Glossary	p. 405
Bibliography	p. 409
Index	p. 419

관련분야 신착자료

Harvard Business Review (2025)