Testing object-oriented systems : models, patterns, and tools
著者
書誌事項
Testing object-oriented systems : models, patterns, and tools
(The Addison-Wesley object technology series / Grady Booch, Ivan Jacobson, James Rumbaugh)
Addison-Wesley, c2000
大学図書館所蔵 全9件
  青森
  岩手
  宮城
  秋田
  山形
  福島
  茨城
  栃木
  群馬
  埼玉
  千葉
  東京
  神奈川
  新潟
  富山
  石川
  福井
  山梨
  長野
  岐阜
  静岡
  愛知
  三重
  滋賀
  京都
  大阪
  兵庫
  奈良
  和歌山
  鳥取
  島根
  岡山
  広島
  山口
  徳島
  香川
  愛媛
  高知
  福岡
  佐賀
  長崎
  熊本
  大分
  宮崎
  鹿児島
  沖縄
  韓国
  中国
  タイ
  イギリス
  ドイツ
  スイス
  フランス
  ベルギー
  オランダ
  スウェーデン
  ノルウェー
  アメリカ
注記
Includes bibliographical references (p. 1119-1142) and index
内容説明・目次
内容説明
More than ever, mission-critical and business-critical applications depend on object-oriented (OO) software. Testing techniques tailored to the unique challenges of OO technology are necessary to achieve high reliability and quality. Testing Object-Oriented Systems: Models, Patterns, and Tools is an authoritative guide to designing and automating test suites for OO applications. This comprehensive book explains why testing must be model-based and provides in-depth coverage of techniques to develop testable models from state machines, combinational logic, and the Unified Modeling Language (UML). It introduces the test design pattern and presents 37 patterns that explain how to design responsibility-based test suites, how to tailor integration and regression testing for OO code, how to test reusable components and frameworks, and how to develop highly effective test suites from use cases. Effective testing must be automated and must leverage object technology. The author describes how to design and code specification-based assertions to offset testability losses due to inheritance and polymorphism.
Fifteen micro-patterns present oracle strategies--practical solutions for one of the hardest problems in test design. Seventeen design patterns explain how to automate your test suites with a coherent OO test harness framework. The author provides thorough coverage of testing issues such as: *The bug hazards of OO programming and differences from testing procedural code *How to design responsibility-based tests for classes, clusters, and subsystems using class invariants, interface data flow models, hierarchic state machines, class associations, and scenario analysis *How to support reuse by effective testing of abstract classes, generic classes, components, and frameworks *How to choose an integration strategy that supports iterative and incremental development *How to achieve comprehensive system testing with testable use cases *How to choose a regression test approach *How to develop expected test results and evaluate the post-test state of an object *How to automate testing with assertions, OO test drivers, stubs, and test frameworks Real-world experience, world-class best practices, and the latest research in object-oriented testing are included.
Practical examples illustrate test design and test automation for Ada 95, C++, Eiffel, Java, Objective-C, and Smalltalk. The UML is used throughout, but the test design patterns apply to systems developed with any OO language or methodology. 0201809389B04062001
目次
List of Figures.
List of Tables.
List of Procedures.
Foreword.
Preface.
Acknowledgments.
I. PRELIMINARIES.
1. A Small Challenge.
2. How to Use This Book.
Reader Guidance.
Conventions.
FAQs for Object-oriented Testing.
Test Process.
3. Testing: A Brief Introduction.
What Is Software Testing?
Definitions.
The Limits of Testing.
What Can Testing Accomplish?
Bibliographic Notes.
4. With the Necessary Changes: Testing and Object-oriented Software.
The Dismal Science of Software Testing.
Side Effects of the Paradigm.
Language-specific Hazards.
Coverage Models for Object-oriented Testing.
An OO Testing Manifesto.
Bibliographic Notes.
II. MODELS.
5. Test Models.
Test Design and Test Models.
Bibliographic Notes.
6. Combinational Models.
How Combinational Models Support Testing.
How to Develop a Decision Table.
Deriving the Logic Function.
Decision Table Validation.
Test Generation.
Choosing a Combinational Test Strategy.
Bibliographic Notes.
7. State Machines.
Motivation.
The Basic Model.
The FREE State Model.
State-based Test Design.
Bibliographic Notes.
8. A Tester's Guide to the UML.
Introduction.
General-purpose Elements.
Use Case Diagram.
Class Diagram.
Sequence Diagram.
Activity Diagram.
Statechart Diagram.
Collaboration Diagram.
Component Diagram.
Deployment Diagram.
Graphs, Relations, and Testing.
Bibliographic Notes.
III. PATTERNS.
9. Results-oriented Test Strategy.
Results-oriented Testing.
Test Design Patterns.
Test Design Template.
Documenting Test Cases, Suites, and Plans.
Bibliographic Notes.
10. Classes.
Class Test and Integration.
Preliminaries.
Method Scope Test Design Patterns.
Category-Partition.
Combinational Function Test.
Recursive Function Test.
Polymorphic Message Test.
Class Scope Test Design Patterns.
Invariant Boundaries.
Nonmodal Class Test.
Quasi-modal Class Test.
Modal Class Test.
Flattened Class Scope Test Design Patterns.
Polymorphic Server Test.
Modal Hierarchy Test.
Bibliographic Notes.
11. Reusable Components.
Testing and Reuse.
Test Design Patterns.
Abstract Class Test.
Generic Class Test.
New Framework Test.
Popular Framework Test.
Bibliographic Notes.
12. Subsystems.
Subsystems.
Subsystem Test Design Patterns.
Class Association Test.
Round-trip Scenario Test.
Controlled Exception Test.
Mode Machine Test.
Bibliographic Notes.
13. Integration.
Integration in Object-oriented Development.
Integration Patterns.
Subsystem/System Scope.
Big Bang Integration.
Bottom-up Integration.
Top-down Integration.
Collaboration Integration.
Backbone Integration.
Layer Integration.
Client/Server Integration.
Distributed Services Integration.
High-frequency Integration.
Bibliographic Notes.
14. Application Systems.
Testing Application Systems.
Test Design Patterns.
Extended Use Case Test.
Covered in CRUD.
Allocate Tests by Profile.
Implementation-specific Capabilities.
Post-development Testing.
Note on Testing Performance Objectives.
Bibliographic Notes.
15. Regression Testing.
Preliminaries.
Test Patterns.
Retest All.
Retest Risky Use Cases.
Retest by Profile.
Retest Changed Code.
Retest Within Firewall.
Bibliographic Notes.
IV. TOOLS.
16. Test Automation.
Why Testing Must Be Automated.
Limitations and Caveats.
17. Assertions.
Introduction.
Implementation-based Assertions.
Responsibility-based Assertions.
Implementation.
The Percolation Pattern.
Deployment.
Limitations and Caveats.
Some Assertion Tools.
Bibliographic Notes.
18. Oracles.
Introduction.
Oracle Patterns.
Comparators.
Bibliographic Notes.
19. Test Harness Design.
How to Develop a Test Harness.
Test Case Patterns.
Test Case/Test Suite Method.
Test Case/Test Suite Class.
Catch All Exceptions.
Test Control Patterns.
Server Stub.
Server Proxy.
Driver Patterns.
TestDriver Superclass.
Percolate the Object Under Test.
Symmetric Driver.
Subclass Driver.
Private Access Driver.
Test Control Interface.
Drone.
Built-in Test Driver.
Test Execution Patterns.
Command Line Test Bundle.
Incremental Testing Framework.
Fresh Objects.
A Test Implementation Syntax.
Bibliographic Notes.
Appendix. BigFoot's Tootsie: A Case Study.
Requirements.
OOA/D for Capability-driven Testing.
Implementation.
Glossary.
References.
Index. 0201809389T04062001
「Nielsen BookData」 より