Testing Object-oriented Systems

Testing Object-oriented Systems

Author: Robert Binder

Publisher: Addison-Wesley Professional

Published: 2000

Total Pages: 1256

ISBN-13: 9780201809381

DOWNLOAD EBOOK

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


Testing Object-Oriented Software

Testing Object-Oriented Software

Author: Imran Bashir

Publisher: Springer Science & Business Media

Published: 2012-12-06

Total Pages: 226

ISBN-13: 1461215269

DOWNLOAD EBOOK

Addressing various aspects of object-oriented software techniques with respect to their impact on testing, this text argues that the testing of object-oriented software is not restricted to a single phase of software development. The book concentrates heavily on the testing of classes and of components or sub-systems, and a major part is devoted to this subject. C++ is used throughout this book that is intended for software practitioners, managers, researchers, students, or anyone interested in object-oriented technology and its impacts throughout the software engineering life-cycle.


Growing Object-Oriented Software, Guided by Tests

Growing Object-Oriented Software, Guided by Tests

Author: Steve Freeman

Publisher: Pearson Education

Published: 2009-10-12

Total Pages: 762

ISBN-13: 0321699769

DOWNLOAD EBOOK

Test-Driven Development (TDD) is now an established technique for delivering better software faster. TDD is based on a simple idea: Write tests for your code before you write the code itself. However, this "simple" idea takes skill and judgment to do well. Now there's a practical guide to TDD that takes you beyond the basic concepts. Drawing on a decade of experience building real-world systems, two TDD pioneers show how to let tests guide your development and “grow” software that is coherent, reliable, and maintainable. Steve Freeman and Nat Pryce describe the processes they use, the design principles they strive to achieve, and some of the tools that help them get the job done. Through an extended worked example, you’ll learn how TDD works at multiple levels, using tests to drive the features and the object-oriented structure of the code, and using Mock Objects to discover and then describe relationships between objects. Along the way, the book systematically addresses challenges that development teams encounter with TDD—from integrating TDD into your processes to testing your most difficult features. Coverage includes Implementing TDD effectively: getting started, and maintaining your momentum throughout the project Creating cleaner, more expressive, more sustainable code Using tests to stay relentlessly focused on sustaining quality Understanding how TDD, Mock Objects, and Object-Oriented Design come together in the context of a real software development project Using Mock Objects to guide object-oriented designs Succeeding where TDD is difficult: managing complex test data, and testing persistence and concurrency


Object-Oriented Software Testing

Object-Oriented Software Testing

Author: Shel Siegel

Publisher:

Published: 1996-07-27

Total Pages: 532

ISBN-13:

DOWNLOAD EBOOK

An important new object-oriented testing approach that gives you greater reusability, improved software quality, and reduced development costs Integration testing, black box testing, regression testing, requirements testing . . . all of these can be highly effective approaches when applied to conventional top-down or structured software development. But object-oriented developers are discovering that the procedural approach to testing is not sufficient when applied to the kind of software they develop. As author Shel Siegel clearly demonstrates in this groundbreaking book, object-oriented software development requires a radically different testing approach, one that incorporates a new set of strategies, testing procedures customized for objects and components, and an integrated, specialized object-oriented testing infrastructure. Now, in Object Oriented Software Testing, he specifies the OO testing system, its objects, environment, tools, and procedures, and shows you how to use them to optimize your object-oriented development efforts. The hierarchical approach described in this book is the first testing scheme designed specifically to address the unique goals and concerns inherent to object-oriented development projects. In case after case it yields nothing less than remarkable results-greater reusability, higher software quality, and consistently lower development costs than those incurred during structured applications development. The first book to explore one of the most important developments in software engineering in recent years, Object Oriented Software Testing is an important addition to your software development library.


Testing and Quality Assurance for Component-based Software

Testing and Quality Assurance for Component-based Software

Author: Jerry Gao

Publisher: Artech House

Published: 2003

Total Pages: 462

ISBN-13: 1580534805

DOWNLOAD EBOOK

Presenting the state of the art in component-based software testing, this cutting-edge resource offers you an in-depth understanding of the current issues, challenges, needs and solutions in this critical area. The book discusses the very latest advances in component-based testing and quality assurance in an accessible tutorial format, making the material easy to comprehend and benefit from no matter what your professional level. important, and how it differs from traditional software testing. From an introduction to software components, testing component-based software and validation methods for software components, to performance testing and measurement, standards and certification and verification of quality for component-based systems, you get a revealing snapshot of the key developments in this area, including important research findings. This volume also serves as a textbook for related courses at the advanced undergraduate or graduate level.


Formal Methods and Testing

Formal Methods and Testing

Author: Robert M. Hierons

Publisher: Springer Science & Business Media

Published: 2008-04-08

Total Pages: 378

ISBN-13: 3540789162

DOWNLOAD EBOOK

This book constitutes the thoroughly refereed and peer-reviewed outcome of the Formal Methods and Testing (FORTEST) network - formed as a network established under UK EPSRC funding that investigated the relationships between formal (and semi-formal) methods and software testing - now being a subject group of two BCS Special Interest Groups: Formal Aspects of Computing Science (BCS FACS) and Special Interest Group in Software Testing (BCS SIGIST). Each of the 12 chapters in this book describes a way in which the study of formal methods and software testing can be combined in a manner that brings the benefits of formal methods (e.g., precision, clarity, provability) with the advantages of testing (e.g., scalability, generality, applicability).


SOFSEM 2007: Theory and Practice of Computer Science

SOFSEM 2007: Theory and Practice of Computer Science

Author: Jan van Leeuwen

Publisher: Springer Science & Business Media

Published: 2007-01-04

Total Pages: 955

ISBN-13: 3540695060

DOWNLOAD EBOOK

This book constitutes the refereed proceedings of the 33rd Conference on Current Trends in Theory and Practice of Computer Science, SOFSEM 2007, held in Harrachov, Czech Republic in January 2007. The 69 revised full papers, presented together with 11 invited contributions were carefully reviewed and selected from 283 submissions. The papers were organized in four topical tracks.


Component-Based Software Testing with UML

Component-Based Software Testing with UML

Author: Hans-Gerhard Gross

Publisher: Springer Science & Business Media

Published: 2005

Total Pages: 340

ISBN-13: 9783540208648

DOWNLOAD EBOOK

Component-based software development regards software construction in terms of conventional engineering disciplines where the assembly of systems from readily-available prefabricated parts is the norm. Because both component-based systems themselves and the stakeholders in component-based development projects are different from traditional software systems, component-based testing also needs to deviate from traditional software testing approaches. Gross first describes the specific challenges related to component-based testing like the lack of internal knowledge of a component or the usage of a component in diverse contexts. He argues that only built-in contract testing, a test organization for component-based applications founded on building test artifacts directly into components, can prevent catastrophic failures like the one that caused the now famous ARIANE 5 crash in 1996. Since building testing into components has implications for component development, built-in contract testing is integrated with and made to complement a model-driven development method. Here UML models are used to derive the testing architecture for an application, the testing interfaces and the component testers. The method also provides a process and guidelines for modeling and developing these artifacts. This book is the first comprehensive treatment of the intricacies of testing component-based software systems. With its strong modeling background, it appeals to researchers and graduate students specializing in component-based software engineering. Professionals architecting and developing component-based systems will profit from the UML-based methodology and the implementation hints based on the XUnit and JUnit frameworks.


Object-oriented Test & Measurement Software Development in C++

Object-oriented Test & Measurement Software Development in C++

Author: Lee Atchison

Publisher: Prentice Hall

Published: 1997

Total Pages: 0

ISBN-13: 9780132279505

DOWNLOAD EBOOK

Today's object-oriented programming languages offer unique advantages for devising and executing test routines for all types of instrumentation. This book introduces C++ concepts in a framework designed especially to suit the concerns of the test and measurement community.