Page 45 - SOFTWARE TESTING & QUALITY ASSURANCE
P. 45

Software Testing and Quality Assurance



                          3.3   Summary

                          •   Structural testing techniques  check the occurrence of bugs in the test software using the actual
                              codes of the software. The tester works with the source code of the software while performing the
                              test.
                          •   In a functional test, the tester is not aware of the actual working of the software. The test analysis
                              is performed based on the outputs that the software generates for various inputs. The bugs are
                              detected by comparing the expected output with the obtained output.

                          •   Black box testing is a functional testing technique. The tester performs the test to check the
                              behavior of the software by providing pre-defined inputs and analyzing the outputs.
                          •   A tester performing white box testing knows the actual code level working of the software. The
                              test cases target to find the bugs associated with the code’s logic, structure, module interface and
                              memory organization.
                          •   In order to make the software bug free, a certain level of both black and white box testing has to be
                              performed on software.
                          •   A static black box testing involves checking for bugs in the specification document. Any mistakes
                              or incorrect information present in the specification is considered as a bug.
                          •   Dynamic black box testing refers to testing for bugs by executing the software.

                          •   Test to pass and test to fail  are dynamic black box testing techniques. Test to pass involves
                              providing normal inputs to the software to check whether it works without any bugs. During test
                              to fail, the tester provides erratic inputs to check the software.
                          •   Equivalence partitioning involves grouping similar test cases and performing the test where, a test
                              case from each class is used to perform the test.
                          •   Dynamic black box testing techniques like the data testing is carried out to check for occurrence of
                              bugs in the input data provided to the software. State testing focuses on the transitions of internal
                              software state.
                          •   Other testing techniques such as random and mutation testing are some of the popular dynamic
                              testing techniques to perform efficient software testing.

                          3.4   Keywords
                          Encapsulation:  A technique  where the internal representation of an object is generally hidden from
                          view outside of the object's definition.
                          Neural Networking or Artificial Intelligence Simulation: This is a branch of computer science where
                          intelligent machines are created through  software programs  that simulate or reproduce the creative
                          functions of the human brain.
                          Source  Code:  It refers to a collection of statements or declarations that are  written in a computer
                          programming language. Source code needs the compiler  or interpreter to translate the file into the
                          object code before execution.

                          State Diagram: It is an illustration of the states an object can attain as well as the transitions between
                          those states.
                          3.5 Self Assessment

                           1.   State whether the following statements are true or false:
                               (a)  The testing strategies and techniques are developed to address a particular type of need or
                                    to test certain required parameters of software.
                               (b)  Static Black box testing consists of viewing the specification at the high and low level.

                               (c)   The testing team must strike a balance depending on the project requirement to adopt both
                                    black and white box testing to test the software.



                          38                      LOVELY PROFESSIONAL UNIVERSITY
   40   41   42   43   44   45   46   47   48   49   50