Sie sind auf Seite 1von 2

1.

1 Testing Fundamentals
1.1.1 Testing Objectives
1.1.2 Test Information Flow
1.1.3 Test Case Design
1.1.1 Testing Objectives
Testing is a process of executing a program with the intent of finding an error.
A good test is one that has a high probability of finding an as yet undiscovered error.
A successful test is one that uncovers an as yet undiscovered error.

The objective is to design tests that systematically uncover different classes of errors and do so
with a minimum amount of time and effort.

Secondary benefits include


Demonstrate that software functions appear to be working according to specification.
That performance requirements appear to have been met.
Data collected during testing provides a good indication of software reliability and some
indication of software quality.

Testing cannot show the absence of defects, it can only show that software defects are present.

1.1.2 Test Information Flow

Notes:
Software Configuration includes a Software Requirements Specification, a Design
Specification, and source code.
A test configuration includes a Test Plan and Procedures, test cases, and testing tools.
It is difficult to predict the time to debug the code, hence it is difficult to schedule.
1.1.3 Test Case Design
Can be as difficult as the initial design.

Can test if a component conforms to specification - Black Box Testing.

Can test if a component conforms to design - White box testing.

Testing can not prove correctness as not all execution paths can be tested.

Example:

A program with a structure as illustrated above (with less than 100 lines of Pascal code) has
about 100,000,000,000,000 possible paths. If attempted to test these at rate of 1000 tests per
second, would take 3170 years to test all paths.

Das könnte Ihnen auch gefallen