Page 216 - DCAP405_SOFTWARE_ENGINEERING
P. 216
Unit 12: Testing Tactics
4. behaviour or performance errors, and Notes
5. initialization and termination errors.
Unlike white-box testing, which is performed early in the testing process, black box testing tends
to be applied during later stages of testing.
Because black-box testing purposely disregards control structure, attention is focused on the
information domain. Tests are designed to answer the following questions:
How is functional validity tested?
How is system behavior and performance tested?
What classes of input will make good test cases?
Is the system particularly sensitive to certain input values?
How are the boundaries of a data class isolated?
What data rates and data volume can the system tolerate?
What effect will specific combinations of data have on system operation?
There are various techniques in developing test cases for black box testing. I will be explaining
two of the most common techniques, Equivalence Partitioning and BVA (Boundary Value
Analysis).
Equivalence Partitioning
Equivalence partitioning is a black-box testing method that divides the input domain of a program
into classes of data from which test cases can be derived. Test case design for equivalence
partitioning is based on an evaluation of equivalence classes for an input condition. An
equivalence class represents a set of valid or invalid states for input conditions. Typically, an
input condition is either a specific numeric value, a range of values, a set of related values, or a
boolean condition. Equivalence classes may be defined according to the following guidelines:
1. If an input condition specifies a range, one valid and two invalid equivalence classes are
defined.
2. If an input condition requires a specific value, one valid and two invalid equivalence
classes are defined.
3. If an input condition specifies a member of a set, one valid and one invalid equivalence
class are defined.
4. If an input condition is boolean, one valid and one invalid class are defined.
Task Try to analyze the limitations of Equivalence Partitioning over BVA.
As an example, consider data maintained as part of an automated banking application.
The user can access the bank using a personal computer, provide a six-digit password, and
follow with a series of typed commands that trigger various banking functions. During the log-
on sequence, the software supplied for the banking application accepts data in the form:
area code—blank or three-digit number
prefix—three-digit number not beginning with 0 or 1
LOVELY PROFESSIONAL UNIVERSITY 209