Computing Reviews

In black and white:an integrated approach to class-level testing of object-oriented programs
Chen H., Tse T., Chan F., Chen T. ACM Transactions on Software Engineering and Methodology7(3):250-295,1998.Type:Article
Date Reviewed: 07/01/99

This paper is concerned with devising tests to help determine whether the implementation of an object satisfies its specification. A specification is assumed to follow the OBJ style of multisorted initial algebras, where the equations are understood as rewrite rules. An object in a given state consists of an anadic operator (creating the object) followed by a number of operations (changing the state of the object), possibly followed by another operator that returns part of the state.

The rewrite rules are used to convert the history into a canonical form. Tests determine whether the result of the history as determined by the implementation is the same as the result of the supposedly equivalent canonical form. This necessarily assumes that each method call, changing the state of the object, is completed before the next method call begins--that is, overlaps with possible interference among method calls are not allowed.

Implementation limits are not available from purely black-box descriptions. Therefore, in order to make the size of the test space reasonable, it is necessary to peek inside the implementation, leading to white-box testing. Given this, a prototype test case generator has been produced. The authors suggest that tests for combinations of objects may also be generated. The question of combinatorial explosions of test spaces is left for the future. The paper should interest those who care about automatic testing, and those who are worried about the scalability of model checking (because many of the same issues arise).

Reviewer:  C. M. Holt Review #: CR122146 (9907-0525)

Reproduction in whole or in part without permission is prohibited.   Copyright 2024 ComputingReviews.com™
Terms of Use
| Privacy Policy