Introduction
Part I Foundations
1 Model-Based Testing
1.1 The Software Development Process
1.2 UML and UTP in System Development
1.3 Model-Based Test Development
1.3.1 Black-Box Testing Approaches
1.3.2 White-Box Testing Approaches
1.3.3 Automatic Test Generation
2 Basics
2.1 UML Overview
2.1.1 Introduction to Class Models
2.1.2 Introduction to Use Cases
2.1.3 Introduction to Sequence Diagrams
2.1.4 Introduction to State Machines
2.1.5 Introduction to Activities
2.2 UTP Overview
3 Library Example Introduction
3.1 What Is a Library?
3.2 What Is Inside a Library?
3.3 Testing a Library
Part II Functional Testing
Overview
4 Unit Level Testing
4.1 UTP and Unit Level Testing
4.1.1 State Machines
4.1.2 Interactions
4.1.3 Activity Diagrams
4.2 Chapter Summary
5 Component and Integration Level Testing
5.1 Integration Strategies and Integration Level Testing
5.2 Test Configuration, Test Components, and Emulators
5.3 UTP and Integration Level Testing
5.4 Chapter Summary
6 System and Acceptance Level Testing
6.1 UTP and System Level Testing
6.1.1 Use Cases
6.2 Chapter Summary
Part III Advanced Testing Concerns
Overview
7 Data-Driven Testing
7.1 UTP and Data-Driven Testing .
7.1.1 Value Specification
7.1.2 Parameterization of Tests and Data Pools
7.1.3 Encoding and Decoding of Data .
7.2 Chapter Summary
8 Real-Time and Performance Testing
8.1 Real-Time Testing Concerns
8.2 UTP and Real-Time Testing
8.2.1 Hard Real-Time Concerns
8.2.2 Soft Real-Time Concerns
8.3 Performance Testing Concerns
8.4 UTP and Performance Testing
8.5 Summary
Part IV Applications of UTP
Overview
9 User-Interface Testing
9.1 Issues in User-Interface Testing
9.2 Planning UI Test Activities
9.2.1 User Interface Context
9.2.2 Logical Aspects
9.2.3 Physical Aspects
9.2.4 Localization Aspects
9.3 UTP and User-Interface Testing
9.3.1 Test Context and Configuration
9.3.2 Using Interaction Diagrams
9.4 Usability Testing
9.5 Chapter Summary
10 Testing Service-Oriented Architecture Applications
10.1 Service-Oriented Architecture Overview
10.1.1 Service Orientation: Basic Concepts
10.1.2 Testing Concerns for SOA .
10.2 UTP Test Specification for SOA Applications
10.2.1 Testing Individual Web Services
10.2.2 Testing Business Processes
10.3 Conclusion
Part V Tools
11 Tool Frameworks and Examples
11.1 Kinds of UTP Tools
11.2 Tool Interoperability
11.3 Executable UTP
12 Test Execution with JUnit
12.1 JUnit 4.0 Fundamentals
12.1.1 Annotations: A New Foundation for JUnit
12.1.2 Test Methods
12.1.3 Set up and Tear down
12.1.4 Assertions
12.1.5 Test Method Annotations
12.2 UTP to JUnit Mapping
12.3 UTP to JUnit Example
12.4 Conclusion
13 Test Execution with TTCN-3
13.1 Fundamentals of TTCN-3
13.1.1 Modules and Test Cases
13.1.2 Types and Values
13.1.3 Test Components and Test Behavior
13.1.4 UTP and TTCN-3 Relationship
13.2 UTP to TTCN-3 Mapping
13.3 UTP to TTCN-3 Example
13.4 Executing UTP Specifications via TTCN-3 Test Platforms
13.5 Representing TTCN-3 Test Suites by UTP
13.6 Conclusion
Part VI Appendixes
A
UTP Reference Guide
Acronyms
References
Index