6.
7.
8.
9.
Functional Testing Non-functional Testing
It verifies the operations and actions of an
It verifies the behavior of an application.
application.
It is based on requirements of customer. It is based on expectations of customer.
It helps to enhance the behavior of the It helps to improve the performance of the
application. application.
It is hard to execute non-functional testing
Functional testing is easy to execute manually. manually.
It tests what the product does. It describes how the product does.
10.
11.
Testing Debugging
Testing is the process to find bugs and Debugging is the process of correcting the
errors. bugs found during testing.
It is the process to identify the failure of It is the process to give absolution to code
implemented code. failure.
Testing is the display of errors. Debugging is a deductive process.
Testing is done by the tester. Debugging is done by either programmer
or the developer.
There is no need of design knowledge in
Debugging can’t be done without proper
the testing process.
design knowledge.
Testing can be done by insiders as well Debugging is done only by insiders. An
as outsiders. outsider can’t do debugging.
Testing can be manual or automated. Debugging is always manual. Debugging
can’t be automated.
It is based on different testing levels i.e. Debugging is based on different types of
unit testing, integration testing, system bugs.
testing, etc.
Testing is a stage of the software Debugging is not an aspect of the
development life cycle (SDLC). software development life cycle, it occurs
as a consequence of testing.
Testing is composed of the validation While debugging process seeks to match
and verification of software. symptoms with cause, by that it leads to
error correction.
Testing is initiated after the code is Debugging commences with the
written. execution of a test case.
Testing process based on various Debugging process based on various
Testing Debugging
levels of testing-system testing, types of bugs is present in a system.
integration testing, unit testing, etc.
•
•
•
o
•
Dynamic data Static Data
1. They are transitory 1. they are fixed in form and content
2. Their lifetime is relatively 2. They appear in the Source code or Short,
typically the database directly or indirectly. processing time of
one transaction.
3. This can be handled in one of 3 ways 3. Compile time processing will solve the
(i)Clean up after the use by the user bugs caused by static data
(ii)Common Cleanup by the resource Manager.
(iii)No clean up