Title :
A passive test oracle using a component´s API
Author :
Shukla, Rakesh ; Carrington, David ; Strooper, Paul
Author_Institution :
Sch. of Inf. Technol. & Electr. Eng., Queensland Univ., St. Lucia, Qld., Australia
Abstract :
A test oracle is a mechanism that is used during testing to determine whether a software component behaves correctly or not. The test oracle problem is widely acknowledged in the software testing literature and many methods for test oracle development have been proposed. Most of these methods use specifications or other resources to develop test oracles. A passive test oracle checks the behaviour of the component, but does not reproduce this behaviour. In this paper, we present a technique that develops passive test oracles for components using their APIs. This simple technique can be applied to any software component that is accessed through an API. In an initial experiment, we found that test oracles developed this way were more effective at finding faults with a relatively small number of test cases than test oracles developed from a formal specification and developed as a parallel implementation.
Keywords :
application program interfaces; object-oriented programming; program testing; software quality; application program interfaces; passive test oracle; software component; software testing; test cases; Application software; Australia; Documentation; Formal specifications; Information technology; Logic testing; Software quality; Software testing; Statistical analysis; System testing;
Conference_Titel :
Software Engineering Conference, 2005. APSEC '05. 12th Asia-Pacific
Print_ISBN :
0-7695-2465-6
DOI :
10.1109/APSEC.2005.13