1 / 7

Testing OO Software

Testing OO Software. Encapsulation means modeling and storing with an object the parts and the operations. Interactions become implicit in code. Makes difficult to understand interactions and to prepare test cases for them. Testing OO Software.

lassie
Download Presentation

Testing OO Software

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Testing OO Software • Encapsulation means modeling and storing with an object the parts and the operations. • Interactions become implicit in code. • Makes difficult to understand interactions and to prepare test cases for them.

  2. Testing OO Software • Perry/Kaiser:Adequate Testing and Object-Oriented Programming • Retest everything when context changes

  3. Testing OO Software • Smith/Robson: Object-Oriented Programming - The Problems of Validation • Quality of a collection of classes • Test not only for correctness but quality of code • Code written with a consistent method (such as the Demeter Method) should have a higher quality than ad-hoc written code

  4. Testing OO Software • Wilde/Huitt: Maintenance Support for Object-Oriented Programs • Law of Demeter • Propagation patterns • Abstracting propagation patterns

  5. Small methods problem of OO • In 3 large scale studies: 50% of methods are less than 2 C++ statements or 4 Smalltalk statements • Law of Demeter connection

  6. Testing OO Software • Robert Binder: Design for Testability in Object-Oriented Systems • Separation of concerns • avoid entwined capabilities, makes testing easier • user interface capabilities should not be entwined with basic functions • Law of Demeter • Demeter Compliance: reduces number of interfaces?

More Related