Test Type
|
Details
|
Functional
Testing (Testing
of function)
|
Target of
Functional Testing is the testing of specified behavior (in a requirements
specification or in a functional specification or in use cases).
Functional
testing is often referred to as Black-Box
testing.
Functional
Testing is performed at all test levels.
Functional
Testing includes Suitability, Interoperability, Security, Accuracy and Compliance.
Functional
Testing can be done from two perspectives –
Requirements–based & Business–process–based.
|
Non–functional
Testing (Testing
of software product characteristics)
|
Target of
Non–functional Testing is the testing of quality characteristics or
non-functional attributes of the system or component or integration group.
It is the
testing of 'how well' the system works.
Non–functional
Testing is performed at all test levels.
Non-functional
testing includes performance testing, load testing, stress testing, usability
testing, maintainability testing, reliability testing and portability
testing.
|
Structural
Testing (Testing
of Software Structure/Architecture)
|
Target of
Structural Testing is the testing of system or component architecture.
Structural
Testing is often referred to as White-Box
or Glass-Box testing.
Structural
Testing is performed mostly at Component and Integration test levels.
The techniques
used for structural testing are Structure–based
techniques, also referred to as White–Box
techniques.
Control flow
models are often used to support structural testing.
|
Confirmation
and Regression testing (Testing
related to changes)
|
Target of
Confirmation and Regression Testing is the testing of changes.
Confirmation
Testing (Re–Testing) –
Executing the
same test again (using the same inputs, data and environment) with a new
version of the software (that has had the defect fixed) to confirm that the
defect has indeed been fixed.
Regression
Testing –
The purpose of
regression testing is to verify that modifications in the software or the
environment have not caused unintended adverse side effects and that the
system still meets its requirements.
It
is appropriate to have a regression test suite at every level of testing (Component
Testing, Integration Testing, System Testing, etc.)
Regression
tests are executed whenever the software changes, either as a result of fixes
or new or changed functionality.
It is also a
good idea to execute them when some aspect of the environment changes (when a
new version of a database management system is introduced or a new version of
a source code compiler is used).
|
Test Types
Subscribe to:
Posts (Atom)