Page 49 - SOFTWARE TESTING & QUALITY ASSURANCE
P. 49

Software Testing and Quality Assurance



                          White box testing helps the software tester to find out the correct type of input data used to test the
                          application effectively, i.e. the tester is aware of the internal coding and hence is able to optimize the
                          code. When the tester removes the extra line of code, it enables the testers to find the hidden defects.
                          According to Pressman, white box testing helps a software tester to perform the following functions:
                           1.   Test independent paths within a unit or a module.

                           2.   Test the logical correctness (test both the true and false conditions).
                           3.   Test loops, specifically at their boundaries and check the operational boundary correctness.
                           4.   Test internal data structures to ensure their validity.
                          White box testing provides greater stability and reusability of test cases. The software application is
                          tested in a thorough way and thus raises the customer satisfaction and confidence.


                          Did you know?   White box testing is also referred to as glass box testing or structural testing or open
                                        box testing or clear box testing, due to its nature of examining the internal workings.
                          4.1   Static White Box Testing

                          Static white box testing methodology  involves testing the internal logic and structure of the code
                          without compiling  and  running the program. The main advantage  of performing  static white box
                          testing is that bugs are found early and those that cannot be uncovered by dynamic white box are also
                          identified. To perform this type of testing, a software tester needs to have the knowledge of software
                          coding and the internal logic. This enables a software tester to differentiate between the statement or the
                          path which works from those which do not work.
                          Static white box testing involves a procedure of analyzing data flow, control flow, information flow,
                          and also testing the intended and unintended software behaviors. There are different aspects that are
                          examined  which include codes, branches, paths, and internal logic. Let us now discuss the various
                          methods by which static white box testing is performed.
                          4.1.1   Examining the Design and Code

                          Examining the design and code refers to examining and reviewing the codes without execution. We
                          have three methods through which bugs are identified and captured. They are reviews, inspections, and
                          walkthroughs.
                          The three methods use procedures and error detecting techniques for analyzing the bugs found and also
                          subsequently correct them. There are planned review meetings that are held and the developers and the
                          testers discuss the nature of  the application and the probable areas of defects. When the areas are
                          identified, they are either corrected or marked for dynamic white box testing.



                          Did you know?   Static white box testing is also referred to as structural analysis.



                                      The responsibility of performing static white box testing varies from one development
                                      team to another development team. In some organizations, the programmers organize
                                      and run reviews by inviting the testers as observers, while in some organizations the
                                      testers perform the task by asking the programmers, who wrote the code along with
                                      other peers, to help them in their reviews.

                          Static white box testing is found to be a cost-effective method of testing. The advantage of performing a
                          static white box testing  is that it provides the testers with better ideas  about the test cases  while
                          implementing them during software development.





                          42                      LOVELY PROFESSIONAL UNIVERSITY
   44   45   46   47   48   49   50   51   52   53   54