-
Clean tests against requirements.
- Additional structural tests for branch coverage, as needed.
- Additional tests for data-flow coverage as needed.
- Domain tests not covered by the above.
- Special techniques as appropriate--syntax, loop, state, etc.
- Any dirty tests not covered by the above.
Functional Testing:
In this type of testing, the software is tested for the functional requirements.
The tests are written in order to check if the application behaves as expected.
Stress Testing:
The application is tested against heavy load such as complex numerical values,
large number of inputs, large number of queries etc. which checks for the
stress/load the applications can withstand.
Load Testing:
The application is tested against heavy loads or inputs such as testing of web
sites in order to find out at what point the web-site/application fails or at
what point its performance degrades.
Ad-hoc Testing:
This type of testing is done without any formal Test Plan or Test Case creation.
Ad-hoc testing helps in deciding the scope and duration of the various other
testing and it also helps testers in learning the application prior starting
with any other testing.
Exploratory Testing:
This testing is similar to the ad-hoc testing and is done in order to
learn/explore the application.
Usability Testing:
This testing is also called as ‘Testing for User-Friendliness’. This testing is
done if User Interface of the application stands an important consideration and
needs to be specific for the specific type of user.
Smoke Testing:
This type of testing is also called sanity testing and is done in order to check
if the application is ready for further major testing and is working properly
without failing up to least expected level.
Recovery Testing:
Recovery testing is basically done in order to check how fast and better the
application can recover against any type of crash or hardware failure etc. Type
or extent of recovery is specified in the requirement specifications.
Volume Testing:
Volume testing is done against the efficiency of the application. Huge amount of
data is processed through the application (which is being tested) in order to
check the extreme limitations of the system.
User Acceptance Testing:
In this type of testing, the software is handed over to the user in order to
find out if the software meets the user expectations and works as it is expected
to.
Alpha Testing:
In this type of testing, the users are invited at the development center where
they use the http://www.onestoptesting.com/blackbox-testing/strategy-two.asp# - - application and the developers note every particular input or
action carried out by the user. Any type of abnormal behavior of the system is
noted and rectified by the developers.
Beta Testing:
In this type of testing, the software is distributed as a http://www.onestoptesting.com/blackbox-testing/strategy-two.asp# - - beta version to the
users and users test the application at their sites. As the users explore the
software, in case if any exception/defect occurs that is reported to the
developers.