Page 35 - SOFTWARE TESTING & QUALITY ASSURANCE
P. 35

Software Testing and Quality Assurance



                          3.1   Structural and Functional Testing

                          Structural and functional testing are two important types of software testing. Structural and functional
                          testing are also called as white box and black box testing.
                          3.1.1   Black Box Testing
                          Black box testing, also termed as behavioral testing,  checks  if  the software works as per the desired
                          requirements or specifications. It is called black box testing because the tester performs the tests without
                          knowing the internal logic  of how exactly the software works.    He/she focuses on the outputs
                          generated in response to selected inputs and execution conditions.


                          Did you know?   In neural  networking or  Artificial Intelligence simulation,  a black box is used to
                                        describe the constantly changing section of the program environment which a
                                        programmer cannot test easily.
                          Developing efficient test cases  is  very essential during  black box testing.  Since the tester has no
                          knowledge of the internal working of the software, they need to rely completely on the analysis of the
                          transformation of the inputs to the outputs based on which they find bugs in the software. This test
                          enables the tester to know whether or not the software does what it is supposed to do. The functional
                          specifications or requirements  of the software provide the information  about the software
                          functionalities.
                                             Testing search engine is  a good example for black box testing. You are  not
                                             aware of the processes that  work behind the  search engine to provide the

                                             desired information. While testing a search engine you provide input in  the
                                             form of words or characters, and check for output parameters such as relevance
                                             of the search result, time taken to perform the search or the order of listing the
                                             search result.

                          Advantages of Black Box Testing
                          Black box testing has many advantages, which include the following:
                           1.   Testers do not have to understand the internal working of the software, and it is easy to create
                               test cases with the perspective of an end user.
                           2.   The testers mainly deal with the Graphic User Interfaces (GUI) for output, and they do not spend
                               time analyzing the internal interfaces. Therefore, test cases can be developed quickly and easily.
                           3.   As soon as the specification of the product is complete, the test cases can be designed.
                           4.   Black box testing helps  to expose any ambiguities or  inconsistencies in  the specifications,  and
                               tests are carried out from a user's perspective.

                                             Testing the functions of an ATM is a good example of black box testing. The
                                             tester acts as a customer who is using the ATM and checks the functions of the
                                             machine.  He/She  does not know the  internal  working of the  logic. The test
                                             cases are developed to check the functions through the GUI of the ATM such as
                                             change in display of the GUI when card is detected, masking the password or
                                             navigating from main menu to a specific function.
                          Disadvantages of Black Box Testing
                           1.   A tester can test only a small number of possible inputs and it is highly impossible to test every
                               possible input stream.
                           2.   It is very difficult to design test cases if specifications are not clear and concise.
                           3.   Situations, such as unnecessary repetition of test inputs, can occur if the tester is not informed of
                               test cases that the programmer has already tested.





                          28                      LOVELY PROFESSIONAL UNIVERSITY
   30   31   32   33   34   35   36   37   38   39   40