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
   211   212   213   214   215   216   217   218   219   220   221