Page 220 - DCAP405_SOFTWARE_ENGINEERING
P. 220

Unit 12: Testing Tactics




                                                                                                Notes
                 Example: If you divided 1 to 1000 input values in valid data equivalence class, then you
          can select test case values like: 1, 11, 100, 950 etc. Same case for other test cases having invalid
          data classes.
          This should be a very basic and simple example to understand the Boundary value analysis and
          Equivalence partitioning concept.

          Advantages of Black-box Testing

          1.   Tester can be non-technical.
          2.   Used to verify contradictions in actual system and the specifications.
          3.   Test cases can be designed as soon as the functional specifications are complete

          Disadvantages of Black-box Testing

          1.   The test inputs needs to be from large sample space.

          2.   It is difficult to identify all possible inputs in limited testing time. So writing test cases is
               slow and difficult.
          3.   Chances of having unidentified paths during this testing.

          12.3 Fault-based Testing


          The strategy for fault based testing is to hypothesize a set of plausible faults and then derive tests
          to prove each hypothesis. The objective of fault based testing within an object oriented system
          is to design tests that have a higher possibility of uncovering plausible errors. Test cases are
          designed to exercise the design or code and to determine whether faults exist. This approach is
          really no better than any random testing technique if faults in object oriented systems are
          implausible.
          Three types of faults are encountered when integration testing looks for plausible faults in
          operation calls or message connections. These faults are:
          1.   unexpected result.
          2.   wrong operation/message used.

          3.   incorrect invocation.
          Integration testing applies to attributes as well as operations. Integration testing attempts to
          find errors in the client side and not the server.

          1.   Testing that employs a test data selection strategy designed to generate test data capable
               of demonstrating the absence of a set of pre-specified faults, typically, frequently occurring
               faults.
          2.   This type of testing allows for designing test cases based on the client specification or the
               code or both. It tries to identify plausible faults (areas of design or code that may lead to
               errors). For each of these faults a test case is developed to “flush” the errors out. These tests
               also force each line of code to be executed










                                           LOVELY PROFESSIONAL UNIVERSITY                                   213
   215   216   217   218   219   220   221   222   223   224   225