وبلاگ بلیان

Testing Object-Oriented Systems: Models, Patterns, and Tools

معرفی کتاب «Testing Object-Oriented Systems: Models, Patterns, and Tools» نوشتهٔ John D. McGregor, David A. Sykes، منتشرشده توسط نشر Addison-Wesley Professional در سال 2001. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است.

This book gives solid view of basics of software testing. This book covers theory as well as practical examples. All the topics are covered in details touching all the aspects of the software testing. This a very good reference book for Software Testing. Cover 1 Table of Contents 2 Copyright 4 Preface 9 Chapter 1. Introduction 11 Who Should Read This Book? 12 What Software Testing Is— and Isn't 13 What Is Different about Testing Object-Oriented Software? 15 Overview of Our Testing Approach 16 Organization of This Book 19 Conventions Used in This Book 20 A Continuing Example— Brickles 21 Exercises 26 Chapter 2. The Testing Perspective 27 Object-Oriented Concepts 29 Object 30 Message 32 Interface 33 Class 34 Class Specification 36 Class Implementation 42 Inheritance 44 Polymorphism 46 Inclusion Polymorphism 47 Parametric Polymorphism 53 Development Products 54 Analysis Models 55 Use Case Diagram 57 Class Diagrams 60 Class Specifications 64 Sequence Diagrams 67 Activity Diagrams 70 Design Models 71 Exercises 77 Chapter 3. Planning for Testing 79 A Development Process Overview 79 A Testing Process Overview 83 Risk Analysis— A Tool for Testing 87 A Testing Process 92 Estimation 106 Levels of Coverage 106 Domain Type 106 Equipment Required 107 Organization Model 107 Testing Effort Estimate 107 A Process for Testing Brickles 108 Document Templates 109 Project Test Plan 111 Component Test Plan 113 Integration Test Plan 119 System Test Plan 119 Iteration in Planning 120 Planning Effort 120 Exercises 122 Chapter 4. Testing Analysis and Design Models 124 An Overview 125 Place in the Development Process 129 The Basics of Guided Inspection 130 Organization of the Guided Inspection Activity 135 Preparing for the Inspection 136 Testing Specific Types of Models 147 Testing Models for Additional Qualities 167 Summary 170 Exercises 172 Chapter 5. Class Testing Basics 180 Class Testing 180 Constructing Test Cases 185 Constructing a Test Driver 201 Summary 236 Exercises 236 Chapter 6. Testing Interactions 238 Object Interactions 239 Testing Object Interactions 248 Sampling Test Cases 252 Testing Off-the-Shelf Components 266 Protocol Testing 270 Test Patterns 271 Testing Exceptions 275 Summary 278 Exercises 279 Chapter 7. Testing Class Hierarchies 280 Inheritance in Object-Oriented Development 280 Subclass Test Requirements 281 Organizing Testing Software 295 Testing Abstract Classes 296 Summary 300 Exercises 300 Chapter 8. Testing Distributed Objects 301 Basic Concepts 302 Computational Models 303 Basic Differences 304 Threads 306 Path Testing in Distributed Systems 307 Life-Cycle Testing 313 Models of Distribution 314 A Generic Distributed-Component Model 318 Specifying Distributed Objects 320 Temporal Logic 322 A Test Environment 328 Test Cases 330 The Ultimate Distributed System— The Internet 338 Summary 342 Exercises 342 Chapter 9. Testing Systems 344 Defining the System Test Plan 345 Complementary Strategies for Selecting Test Cases 347 Use Cases as Sources of Test Cases 350 Testing Incremental Projects 359 Testing Multiple Representations 361 What Needs to Be Tested? 363 Types of Testing 368 Testing Different Types of Systems 372 Measuring Test Coverage 376 Summary 380 Exercises 380 Chapter 10. Components, Frameworks, and Product Lines 382 Component Models 383 Frameworks 398 Product Lines 401 Summary 404 Exercises 404 Chapter 11. Conclusion 406 Suggestions 406 Brickles 410 Finally 412 Bibliography 414

A Practical Guide to Testing Object-Oriented Software focuses on the real-world issues that arise in planning and implementing effective testing for object-oriented and component-based software development. It shows how testing object-oriented software differs from testing procedural software and highlights the unique challenges and opportunities inherent in object-oriented software testing.

The authors reveal how object-oriented software development allows testing to be integrated into each stage of the process--from defining requirements to system integration--resulting in a smoother development process and a higher end quality. As they follow this process, they describe what to test at each stage as well as offer experienced-based testing techniques.

You will find information on such important topics as:

  • Testing analysis and design models, including selecting test cases to guide design inspections
  • Testing components, frameworks, and product lines
  • The testing challenges of inheritance and polymorphism
  • How to devise an effective testing strategy
  • Testing classes, including constructing a test driver and test suites
  • Testing object interactions, covering sampling test cases, off-the-shelf components, protocol testing, and test patterns
  • Testing class hierarchies, featuring subclass test requirements
  • Testing distributed objects, including threads, life cycle testing, and Web server testing
  • Testing systems, with information on stress, life cycle, and performance testing

One comprehensive example runs throughout the book to demonstrate testing techniques for each stage of development. In addition, the book highlights important questions that testers should ask when faced with specific testing tasks.

The authors acknowledge that testing is often viewed as a necessary evil, and that resources allocated to testing are often limited. With that in mind, they present a valuable repertoire of testing techniques from which you can choose those that fit your budget, schedule, and needs.

0201325640B04062001

While developers and IT organizations increasingly acknowledge the importance of software testing, few know how to proceed -- especially when it comes to testing advanced object-oriented software systems. In this book, two leading O-O test researchers and consultants outline a start-to-finish methodology for testing: what to test, why to test it, how to test it, who should do the testing, and when . The book is organized around a task orientation, encompassing testing models; testing components, systems and subsystems; and planning for testing. The authors review the unique challenges associated with object-oriented software testing, offer practical insights into testing priorities, introduce each leading testing technique, and walk step-by-step through applying them. They review the development of custom test software, and demonstrate how to strengthen the ties between testing and the rest of the development process. Features include a detailed object-oriented testing FAQ, and a running case study that ties together all stages and elements of O-O testing. For every IT manager, project manager, software developer and engineer, and for any professional concerned with the measurement of software quality A guide for those developing object-oriented software, to testing that can be integrated into each step of the development process, thereby increasing the chances that the finished product will be of high quality. Discusses all aspects of testing, life cycle, performance testing, and testing challenges related to object-oriented software creating. Computer software--Testing
دانلود کتاب Testing Object-Oriented Systems: Models, Patterns, and Tools