Page 55 - SOFTWARE TESTING & QUALITY ASSURANCE
P. 55

Software Testing and Quality Assurance



                               (b)  Check if the error condition has been handled
                               (c)   Check if the software handles the situation of the external device being disconnected
                               (d)  Check if all the exceptions are handled by some part of the code
                               (e)  Check if all error messages have been checked for correctness, appropriateness, grammar,
                                    and spelling
                           8.   Other Checks: The ones which do not fit into the above mentioned categories fall under the other
                               checks. In this category of error checks, we will check for the following:
                               (a)  Check if the code is portable to the other OS platforms

                                             The GCC compiler warnings( GCC is the GNU Compiler Collection used to
                                             compile C programs)


                               (b)  Check whether the code handles ASCII and Unicode
                                             Checking  whether the  software will work  well  with languages other than
                                             English.

                               (c)   Check whether your code passes the lint test
                               (d)  Check issues related to internationalization
                               (e)  Check whether the code relies on deprecated APIs
                               (f)   Check whether the code ports to architectures with different byte orderings
                          4.2   Dynamic White Box Testing

                          Dynamic white box testing is a validation check which involves testing and running the test cases with
                          input values. The dynamic  white box testing  ensures  that the application works  according to the
                          specification throughout the execution. The results of the execution give proof about the actual behavior
                          of the code. A software tester collects ample information which enables the tester to analyze what the
                          code does, how it works, what to test, what not to test, and thus determines the approach of  the testing
                          process.

                                      Dynamic white box testing is also known as structural testing, as it enables the tester to
                                      view the structure of the code and its design and run the tests.

                          The four prominent areas that dynamic white box testing encompasses are:
                               (a)  Testing low-level functions, procedures, subroutines, or libraries directly.

                                             The low-level functions, procedures,  and subroutines are known as API’s
                                             (Application Programming Interfaces) in Microsoft.

                               (b)  Testing the software at the top level, as a completed program, by adjusting the test cases
                                    based on what we know about the software operation.
                               (c)   Gaining access to read variables and state information from the software and enabling the
                                    tester to determine whether the tests are doing what they were designed to do. Forcing the
                                    software to do things that would be difficult, if they are tested normally.
                               (d)  Measuring how much of the code and which particular code a tester "hits”  when he/she
                                    runs the tests and also how he/she adjusts the tests to remove the redundant test cases and
                                    add the missing ones.







                          48                      LOVELY PROFESSIONAL UNIVERSITY
   50   51   52   53   54   55   56   57   58   59   60