0% found this document useful (0 votes)
43 views

Software Testing Methods

Uploaded by

shaly
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
43 views

Software Testing Methods

Uploaded by

shaly
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

SOFTWARE TESTING - METHODS

http://www.tutorialspoint.com/software_testing/software_testing_methods.htm Copyright © tutorialspoint.com

There are different methods that can be used for software testing. This chapter briefly describes
the methods available.

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.

The following table lists the advantages and disadvantages of black-box testing.

Advantages Disadvantages

Well suited and efficient for large code Limited coverage, since only a selected
segments. number of test scenarios is actually
performed.
Code access is not required.
Inefficient testing, due to the fact that the
Clearly separates user's perspective tester only has limited knowledge about
from the developer's perspective an application.
through visibly defined roles.
Blind coverage, since the tester cannot
Large numbers of moderately skilled target specific code segments or error-
testers can test the application with no prone areas.
knowledge of implementation,
programming language, or operating The test cases are difficult to design.
systems.

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 Disadvantages

As the tester has knowledge of the Due to the fact that a skilled tester is
source code, it becomes very easy to find needed to perform white-box testing, the
out which type of data can help in testing costs are increased.
the application effectively.
Sometimes it is impossible to look into
It helps in optimizing the code. every nook and corner to find out hidden
errors that may create problems, as
Extra lines of code can be removed many paths will go untested.
which can bring in hidden defects.
It is difficult to maintain white-box
Due to the tester's knowledge about the testing, as it requires specialized tools
code, maximum coverage is attained like code analyzers and debugging tools.
during test scenario writing.
Grey-Box Testing
Grey-box testing is a technique to test the application with having a limited knowledge of the
internal workings of an application. In software testing, the phrase the more you know, the better
carries a lot of weight while testing an application.

Mastering the domain of a system always gives the tester an edge over someone with limited
domain knowledge. Unlike black-box testing, where the tester only tests the application's user
interface; in grey-box testing, the tester has access to design documents and the database. Having
this knowledge, a tester can prepare better test data and test scenarios while making a test plan.

Advantages Disadvantages

Offers combined benefits of black-box Since the access to source code is not
and white-box testing wherever possible. available, the ability to go over the code
and test coverage is limited.
Grey box testers don't rely on the source
code; instead they rely on interface The tests can be redundant if the
definition and functional specifications. software designer has already run a test
case.
Based on the limited information
available, a grey-box tester can design Testing every possible input stream is
excellent test scenarios especially unrealistic because it would take an
around communication protocols and unreasonable amount of time; therefore,
data type handling. many program paths will go untested.
The test is done from the point of view of
the user and not the designer.

A Comparison of Testing Methods


The following table lists the points that differentiate black-box testing, grey-box testing, and white-
box testing.

Black-Box Testing Grey-Box Testing White-Box Testing

The internal workings of an The tester has limited knowledge Tester has full knowledge
application need not be of the internal workings of the of the internal workings of
known. application. the application.

Also known as closed-box Also known as translucent testing, Also known as clear-box
testing, data-driven testing, or as the tester has limited testing, structural testing,
functional testing. knowledge of the insides of the or code-based testing.
application.

Performed by end-users and Performed by end-users and also Normally done by testers
also by testers and by testers and developers. and developers.
developers.

Testing is based on external Testing is done on the basis of Internal workings are fully
expectations - Internal high-level database diagrams and known and the tester can
behavior of the application is data flow diagrams. design test data
unknown. accordingly.

It is exhaustive and the least Partly time-consuming and The most exhaustive and
time-consuming. exhaustive. time-consuming type of
testing.

Not suited for algorithm Not suited for algorithm testing. Suited for algorithm
testing. testing.

This can only be done by trial- Data domains and internal Data domains and internal
and-error method. boundaries can be tested, if boundaries can be better
known. tested.

You might also like