Search This Blog

Wednesday, August 31, 2016

Software Testing - Methods

There are different method that can be used for software testing.

Black-Box Testing
The technique of testing without having any knowledge of the interior workings of the application is called black-box testing. The tester is oblivious to the system architecture and does not have access to the source code. Typically while performing a black-box test, a tester will interact with the system's user interface by providing inputs and examining outputs without knowing how and where the inputs are worked upon.

Advantages 
  •  Well suited and efficient for large code segments.
  •  Code access is not required.
  • Extra lines of code can be removed which can bring in hidden defects.
  • Due to the tester's knowledge about the code, maximum coverage is attained during test scenario writing.

Disadvantages 
  •  Limited coverage, since only a selected number of test scenarios is actually performed.
  •  Inefficient testing, due to the fact that the tester only has limited knowledge about an application.
  • The test cases are difficult to design.


White-Box Testing
White-box testing is the detailed investigation of internal logic and structure of the code. White-box testing is also called glass testing or open-box testing. In order to perform white-box testing on an application, a tester needs to know the internal workings of the code.
The tester needs to have a look inside the source code and find out which unit/chunk of the code is behaving inappropriately.
The following table lists the advantages and disadvantages of white-box testing.

 Advantages 
  • As the tester has knowledge of the source code it becomes very easy to find out which type of data can help in testing the application effectively.
  •  Extra lines of code can be removed which can bring in hidden defects.
  • Due to the tester's knowledge about the code, maximum coverage is attained during test scenario writing.

Disadvantages 
  • Due to the fact that a skilled tester is needed to perform white-box testing, the costs are increased.
  •  Sometimes it is impossible to look into every nook and corner to find out hidden errors that may create problems, as many paths will go untested.
  • It is difficult to maintain white-box testing, as it requires specialized tools like code analyzers and debugging tools.

No comments:

Post a Comment