A number of activities involved in testing software are known to be difficult and time consuming. Among them is the isolation of faults once failures have been detected. In this paper, we investigate how the instrumentation of contracts could address this issue. Contracts are known to be a useful technique to specify the precondition and postcondition of operations and class invariants, thus making the definition of object-oriented analysis or design elements more precise. Our aim in this paper is to reuse and instrument contracts to ease testing. A thorough case study is run where we define contracts, instrument them using a commercial tool, and assess the benefits and limitations of doing so to support the isolation of faults. We then draw practical conclusions regarding the applicability of the approach and its limitations.

Additional Metadata
Keywords Contracts, Object-Oriented Analysis, Object-Oriented Testing, Testability
Conference ISSTA 02 Proceedings of the ACM SIGSOFT 2002 International Symposium on Software Testing and Analysis
Citation
Briand, L.C., Labiche, Y, & Sun, H. (2002). Investigating the use of analysis contracts to support fault isolation in object oriented code. Presented at the ISSTA 02 Proceedings of the ACM SIGSOFT 2002 International Symposium on Software Testing and Analysis.