Article ID | Journal | Published Year | Pages | File Type |
---|---|---|---|---|
461100 | Journal of Systems and Software | 2013 | 14 Pages |
•This paper presents a black-box approach to interface testing.•The functional specification of a component's API is written using an abstract language and used to automatically generate and run tests.•The methodology is illustrated using a real case study that reveals the potential of the technique.•Several implementations in different programming languages were tested with a single test specification, and found several errors that had been missed in previous and more traditional testing activities.•We create a reusable framework to test integration APIs of other components, the first stage in creating a complete testing framework.
Integration of reused, well-designed components and subsystems is a common practice in software development. Hence, testing integration interfaces is a key activity, and a whole range of technical challenges arise from the complexity and versatility of such components.In this paper, we present a methodology to fully test different implementations of a software component integration API. More precisely, we propose a black-box testing approach, based on the use of QuickCheck and inspired by the TTCN-3 test architecture, to specify and test the expected behavior of a component. We have used a real-world multimedia content management system as case study. This system offers the same integration API for different technologies: Java, Erlang and HTTP/XML. Using our method, we have tested all integration API implementations using the same test specification, increasing the confidence in its interoperability and reusability.