Types of Testing
Types of Testing
Manual Testing
Manual testing is a technique to test the software that is carried out using
the functions and features of an application. In manual software testing, a
tester carries out tests on the software by following a set of predefined
test cases. In this testing, testers make test cases for the codes, test the
software, and give the final report about that software. Manual testing is
time-consuming because it is done by humans, and there is a chance of
human errors.
2. Automation Testing
Automated Testing is a technique where the Tester writes scripts on
their own and uses suitable Software or Automation Tool to test the
software. It is an Automation Process of a Manual Process. It allows for
executing repetitive tasks without the intervention of a Manual Tester.
1. Functional Testing
Functional Testing is a type of Software Testing in which the system is
tested against the functional requirements and specifications. Functional
testing ensures that the requirements or specifications are properly
satisfied by the application. This type of testing is particularly concerned
with the result of processing. It focuses on the simulation of actual system
usage but does not develop any system structure assumptions. The
article focuses on discussing function testing.
2. Non-Functional Testing
Non-functional Testing is a type of Software Testing that is performed to
verify the non-functional requirements of the application. It verifies
whether the behavior of the system is as per the requirement or not. It
tests all the aspects that are not tested in functional testing. Non-
functional testing is a software testing technique that checks the non-
functional attributes of the system. Non-functional testing is defined as a
type of software testing to check non-functional aspects of a software
application. It is designed to test the readiness of a system as per
nonfunctional parameters which are never addressed by functional
testing. Non-functional testing is as important as functional testing.
1. Unit Testing
Unit testing is a method of testing individual units or components of a
software application. It is typically done by developers and is used to
ensure that the individual units of the software are working as intended.
Unit tests are usually automated and are designed to test specific parts of
the code, such as a particular function or method. Unit testing is done at
the lowest level of the software development process , where individual units
of code are tested in isolation.
2. Integration Testing
Integration testing is a method of testing how different units or components
of a software application interact with each other. It is used to identify and
resolve any issues that may arise when different units of the software are
combined. Integration testing is typically done after unit testing and before
functional testing and is used to verify that the different units of the
software work together as intended
3. System Testing
System testing is a type of software testing that evaluates the overall
functionality and performance of a complete and fully integrated software
solution. It tests if the system meets the specified requirements and if it is
suitable for delivery to the end-users. This type of testing is performed
after the integration testing and before the acceptance testing.
4. End-to-end Testing
End-to-end testing is the type of software testing used to test entire
software from starting to the end along with its integration with external
interfaces. The main purpose of end-to-end testing is to identify system
dependencies and to make sure that the data integrity and communication
with other systems, interfaces and databases to exercise complete
production.
5. Acceptance Testing
It is formal testing according to user needs, requirements, and business
processes conducted to determine whether a system satisfies the
acceptance criteria or not and to enable the users, customers, or other
authorized entities to determine whether to accept the system or not.
2. Usability Testing
You design a product (say a refrigerator) and when it becomes completely
ready, you need a potential customer to test it to check it working. To
understand whether the machine is ready to come on the market,
potential customers test the machines. Likewise, the best example of
usability testing is when the software also undergoes various testing
processes which is performed by potential users before launching into the
market. It is a part of the software development lifecycle (SDLC).
3. Compatibility Testing
Compatibility testing is software testing that comes under the non functional
testing category, and it is performed on an application to check its
compatibility (running capability) on different platforms/environments. This
testing is done only when the application becomes stable. This means
simply this compatibility test aims to check the developed software
application functionality on various software, hardware platforms,
networks browser etc. This compatibility testing is very important in
product production and implementation point of view as it is performed to
avoid future issues regarding compatibility.