Abstract
With the advent of object-oriented languages and the portability of Java APIs, the development and use of reusable software components is becoming a reality. Effective component reuse depends on component reliability, which in turn depends on thorough testing. The literature, however, provides few approaches to component testing that are practical for the input generation and output checking of the large number of test cases required. In this paper, we present the Roast tool and techniques for the testing of Java APIs. The tool and techniques are illustrated on two non-trivial components and quantitative results are presented to substantiate the practicality and effectiveness of the approach.