HOME
SOFTWARE TESTING
WHAT IS SOFTWARE TESTING?

Software testing is a complex discipline consisting of art, science, and engineering. The practice of it is artistic, the underlying principles are based on solid science, and the methodologies are those found in engineering. Contrary to popular belief, software testing is a precursor to software engineering. That is, software design begins with testing. The product of software testing in robust code that exhibits many important characteristics such as availability (it must work flawlessly for the majority of the time), consistency (the results must be consistent from run to run), accuracy (the results must meet the expectations of the user) and fault tolerance (robustness is not the absence of errors but how well they are handled). In this class, we investigate software testing using a three-legged approach:

Software testing = { principles | methodologies | tools }

Examples of principles are the TRAFFIC or the Clean Room principles. Methodologies include program slicing and asserting invariants, and examples of the tons of tools that are available include Bugzilla, Junit and Codesurfer.

CLASS REGISTRATION
Copyright © Les A. Piegl. All rights reserved.
Bookmark and Share
Dr. Les A. Piegl, Department of Computer Science and Engineering, University of South Florida, Tampa, FL 33620
Full name:
U-number:
E-mail: