Various Types of Software Testings
Various Types of Software Testings
Testings
Acceptance Testing
Ad hoc
Testing in OOP
Testing in Web designing
Metrics of testing
User Acceptance Testing
User acceptance is a type of testing performed by the
Client to certify the system with respect to the
requirements that was agreed upon.
This testing happens in the final phase of testing
before moving the software application to Market or
Production environment.
The main purpose of this testing is to validate the end
to end business flow.
It does NOT focus on the cosmetic errors, Spelling
mistakes or System testing.
This testing is carried out in separate testing
environment with production like data setup. It is a
kind of black box testing where two or more end users
will be involved.
What is Acceptance testing or User
Acceptance Testing (UAT)?
After the system test has corrected all or most
defects, the system will be delivered to the
user or customer forAcceptance
TestingorUser Acceptance Testing (UAT).
Acceptance tests are useful, because:
they capture user requirements in a directly
verifiable way,
they identify problems which unit or integration
tests might have missed,
and they provide an overview on how done the
system is.
Who Performs UAT
Client
End users
Need of User Acceptance Testing:
Once a software has undergone Unit, Integration and
System testing the need of Acceptance Testing may
seem redundant.But Acceptance Testing is
required because
Ad-hoc testing gives freedom to the tester to apply their own new
ways of testing the application which helps them to find out more
number of defects compared to the formal testing process.
This type of testing can be done at anytime anywhere in
theSoftware Development Life cycle (SDLC) without following
any formal process.
This type of testing is not only limited to the testing team but this
can also be done by the developer while developing their module
which helps them to code in a better way.
Ad-hoc testing proves to be very beneficial when there is less time
and in-depth testing of the feature is required. This helps in
delivering the feature withqualityand on time.
Ad-hoc testing can be simultaneously executed with the other
types of testing which helps in finding more bugs in lesser time.
In this type of testing the documentation is not necessary which
helps the tester to do the focused testing of the feature or
application without worrying about the formal documentation.
Disadvantages of Ad-hoc
testing
Since ad-hoc testing is done without any
planning and in unstructured way so recreation
of bugs sometime becomes a big trouble.
The test scenarios executed during the ad-hoc
testing are not documented so the tester has to
keep all the scenarios in their mind which
he/she might not be able to recollect in future.
Ad-hoc testing is very much dependent on the
skilled tester who has thorough knowledge of
the product it cannot be done by any new joiner
of the team.
Best practices while executing ad-
hoc testing
If ad-hoc testing is not executed in the proper
manner then it can result in total loss of time and
effort. Below are few pointers to keep in mind as
where and how to apply this ad-hoc testing:
Good knowledge on the product:
The tester who is going to execute the ad-hoc
testing should have a very good knowledge of the
product. He should be very well aware with all the
features in the product. This helps the tester
inerror guessingand finding the maximum
number of bugs from the defect prone areas.
Prioritizing feature:
When ad-hoc testing is to be done for the multiple features
then the testers should first categorize and prioritize the
features. Features which are highly used by the customers
should be tested first so that if any priority bug exists in the
feature can be reported and fixed early.
Rough planning:
Although there is no need of any documentation in ad-hoc
testing as stated earlier but noting down the pointers to be
tested during this testing will help the tester to remember all
the possible areas for testing. This helps in having the
maximum test coverage in lesser time.
Usage of Tools:
Sometimes during testing there are bugs or exceptions found
in logs which are not seen in the UI or which is not obstructing
the testing in any way. Such kind of bugs can also be of high
severity. In order to catch such kind of bugs or exceptions we
need to use tools like debuggers, profilers or task monitors.
Documentation of observations:
Even though the ad-hoc testing does not support
documentation but its always better to write a note in brief
about your testing, findings, deviations. If defects are found
then the relevant test case should be created so that it will
help the tester to retest the scenario in future.