Applying Formal Methods to Software Testing

Stocks, Philip Alan (1994). Applying Formal Methods to Software Testing PhD Thesis, Department of Computer Science, University of Queensland.

Attached Files (Some files may be inaccessible until you login with your UQ eSpace credentials)
Name Description MIMEType Size Downloads
n01front.pdf n01front.pdf application/pdf 207.27KB 1
n02whole.pdf n02whole.pdf application/pdf 752.68KB 2
Author Stocks, Philip Alan
Thesis Title Applying Formal Methods to Software Testing
School, Centre or Institute Department of Computer Science
Institution University of Queensland
Publication date 1994
Thesis type PhD Thesis
Supervisor Dr David Carrington
Abstract/Summary This thesis examines applying formal methods to software testing. Software testing is a critical phase of the software life-cycle which can be very effective if performed rigorously. Formal specifications offer the bases for rigorous testing practices. Not surprisingly, the most immediate use of formal specifications in software testing is as sources of black-box test suites. However, formal specifications have more uses in software testing than merely being sources for test data. We examine these uses, and show how to get more assistance and benefit from formal methods in software testing. At the core of this work is a exible framework in which to conduct specification-based testing. The framework is founded on formal definitions of tests and test suites, which directly addresses important issues in managing software testing. This provides a uniform platform for other applications of formal methods to testing such as analysis and reification of tests, and also for applications beyond testing such as maintenance and specification validation. The framework has to be exible so that any testing strategies can be used. We examine the need to adapt certain strategies to work with the framework and formal specification. Our experiments showed some deficiencies that arise when using derivation strategies on abstract specifications. These deficiencies led us to develop two new specification-based testing strategies based on extensions to existing strate- gies. We demonstrate the framework, strategies, and other applications of formal methods to software testing using three case studies. In each of these, the framework was easy to use. It provided an elegant and powerful means for defining and structuring tests, and a suitable staging ground for other applications of formal methods to software testing. This thesis demonstrates how formal specification techniques can systematise the application of testing strategies, and also how the concepts of software testing can be combined with formal specifications to extend the role of the formal specification in software development.
Keyword Software testing
formal methods
Z notation

Citation counts: Google Scholar Search Google Scholar
Created: Fri, 21 Nov 2008, 17:40:25 EST