Tuesday, September 16, 2008

Introduction to Software Testing

What is Software Testing?

Software Testing is an activity being part of the software development process aimed at evaluating a software item (system, subsystem, unit etc.) features (functionality, performance etc.) against the given set of system requirements. Software testing implies running the software item in predetermined conditions (test case, test scenario), recording and analyzing the obtained results, and identifying errors (i.e. bugs), which means failure to satisfy a set of requirements to the software.

Software Testing Fundamentals

During testing the software engineering produces a series of test cases that are used to “rip apart” the software they have produced. Testing is the one step in the software process that can be seen by the developer as destructive instead of constructive. Software engineers are typically constructive people and testing requires them to overcome preconceived concepts of correctness and deal with conflicts when errors are identified.

Testing objectives include

1. Testing is a process of executing a program with the intent of finding an error.
2. A good test case is one that has a high probability of finding an as yet undiscovered error.
3. A successful test is one that uncovers an as yet undiscovered error.

No comments: