SlideShare a Scribd company logo
DIFFERENT TYPES OF SOFTWARE
TESTING
SOFTWARE TESTING
Software testing is a process of identifying the
correctness of software by considering its all
attributes (Reliability, Scalability, Portability,
Re-usability, Usability) and evaluating the
execution of software components to find the
software bugs or errors or defects.
Software testing provides an independent view and objective of the
software and gives surety of fitness of the software.
It involves testing of all components under the required services to
confirm that whether it is satisfying the specified requirements or not.
The process is also providing the client with information about the quality
of the software.
Testing is mandatory because it will be a dangerous situation if the
software fails any of time due to lack of testing. So, without testing
software cannot be deployed to the end user.
TESTING
Testing is a group of techniques to determine the correctness of the
application under the predefined script but, testing cannot find all the
defect of application.
The main intent of testing is to detect failures of the application so that
failures can be discovered and corrected.
It does not demonstrate that a product functions properly under all
conditions but only that it is not working in some specific conditions.
Testing furnishes comparison that compares the behavior and state of
software against mechanisms because the problem can be recognized by
the mechanism.
The mechanism may include past versions of the same specified product,
comparable products, and interfaces of expected purpose, relevant
standards, or other criteria but not limited up to these.
Testing includes an examination of code and also the execution of code in
various environments, conditions as well as all the examining aspects of
the code.
In the current scenario of software development, a testing team may be
separate from the development team so that Information derived from
testing can be used to correct the process of software development.
The success of software depends upon acceptance of its targeted
audience, easy graphical user interface, strong functionality load test,
etc.
For example, the audience of banking is totally different from the
audience of a video game. Therefore, when an organization develops a
software product, it can assess whether the software product will be
beneficial to its purchasers and other audience.
Type of Software testing
Principles of Testing:-
(i) All the tests should meet the customer requirements.
(ii) To make our software testing should be performed by
a third party.
(iii) Exhaustive testing is not possible. As we need the
optimal amount of testing based on the risk assessment of
the application.
(iv) All the tests to be conducted should be planned before
implementing it
(v) It follows the Pareto rule(80/20 rule) which states that
80% of errors come from 20% of program components.
(vi) Start testing with small parts and extend it to large
parts.
MANUAL TESTING
Manual testing is a software testing process in which test cases are
executed manually without using any automated tool.
Manual testing is mandatory for every newly developed software before
automated testing.
This testing requires great efforts and time, but it gives the surety of
bug-free software. Manual Testing requires knowledge of manual testing
techniques but not of any automated testing tool.
Types of Manual Testing
There are various methods used for
manual testing. Each technique is
used according to its testing
criteria. Types of manual testing
are given below:
● White Box Testing
● Black Box Testing
● Gray Box Testing
WHITE BOX TESTING
White box testing which also known as glass box is testing, structural
testing, clear box testing, open box testing and transparent box testing.
It tests internal coding and infrastructure of a software focus on
checking of predefined inputs against expected and desired outputs.
It is based on inner workings of an application and revolves around
internal structure testing.
In this type of testing programming skills are required to design test
cases.
The primary goal of white box testing is to focus on the flow of inputs
and outputs through the software and strengthening the security of the
software.
GREY BOX TESTING
Greybox testing is a software testing
method to test the software
application with partial knowledge of
the internal working structure.
It is a combination of black box and
white box testing because it involves
access to internal coding to design
test cases as white box testing and
testing practices are done at
functionality level as black box
testing.
BLACK BOX TESTING
Black box testing is a technique of
software testing which examines the
functionality of software without peering
into its internal structure or coding.
The primary source of black box testing is
a specification of requirements that is
stated by the customer.
FUNCTIONAL TESTING
It is a type of software testing which is used to verify the functionality
of the software application, whether the function is working according to
the requirement specification.
In functional testing, each function tested by giving the value,
determining the output, and verifying the actual output with the expected
value.
Functional testing performed as black-box testing which is presented to
confirm that the functionality of an application or system behaves as we
are expecting.
It is done to verify the
functionality of the application.
Functional testing also called as
black-box testing, because it
focuses on application specification
rather than actual code. Tester has
to test only the program rather
than the system.
Software Testing.pptx
UNIT TESTING
Unit testing involves the testing of each unit or an individual component
of the software application. It is the first level of functional testing.
The aim behind unit testing is to validate unit components with its
performance.
Whenever the application is ready and given to the Test engineer, he/she
will start checking every component of the module or module of the
application independently or one by one, and this process is known as Unit
testing or components testing.
INTEGRATION TESTING
Integration testing is the second level
of the software testing process
comes after unit testing.
In this testing, units or individual
components of the software are
tested in a group.
The focus of the integration testing
level is to expose defects at the time
of interaction between integrated
components or units
Once all the components or modules are working independently, then we
need to check the data flow between the dependent modules is known as
integration testing.
INCREMENTAL TESTING
In Incremental integration testing, the developers integrate the modules
one by one using stubs or drivers to uncover the defects. This approach
is known as incremental integration testing. To the contrary, big bang is
one other integration testing technique, where all the modules are
integrated in one shot.
Incremental Testing Methodologies
Top down Integration - This type of integration testing takes place from
top to bottom. Unavailable Components or systems are substituted by
stubs.
Bottom Up Integration - This type of integration testing takes place
from bottom to top. Unavailable Components or systems are substituted
by Drivers.
Functional incremental - The Integration and testing takes place on the
basis of the functions or functionalities as per the functional specification
document.
NON-INCREMENTAL TESTING
The non incremental approach is also known as “Big-Bang” testing. This
approach is very unfashionable due to the level of risk that one takes in
hoping that the system will perform as expected.
SYSTEM TESTING
System testing falls under Black box testing as it includes testing of the
external working of the software. Testing follows user's perspective to
identify minor defects.
System Testing includes the following steps.
● Verification of input functions of the application to test whether it is
producing the expected output or not.
● Testing of integrated software by including external peripherals to
check the interaction of various components with each other.
● Testing of the whole system for End to End testing.
● Behavior testing of the application via auser's experience
NON-FUNCTIONAL TESTING
Non-functional testing is a type of software testing to test non-functional parameters
such as reliability, load test, performance and accountability of the software.
The primary purpose of non-functional testing is to test the reading speed of the
software system as per non-functional parameters.
The parameters of non-functional testing are never tested before the functional
testing.
Non-functional testing is also very important as functional testing because it plays a
crucial role in customer satisfaction.
For example, non-functional testing would be to test how many people can work
simultaneously on any software.
PERFORMANCE TESTING
It is the most important part of
non-functional testing.
“Checking the behavior of an
application by applying some load is
known as performance testing.”
LOAD TESTING
The load testing is used to check the
performance of an application by applying
some load which is either less than or
equal to the desired load is known as load
testing.
For example: In the below image, 1000
users are the desired load, which is given
by the customer, and 3/second is the goal
which we want to achieve while performing
a load testing.
STRESS TESTING
The stress testing is testing, which
checks the behavior of an application by
applying load greater than the desired
load.
For example: If we took the above
example and increased the desired load
1000 to 1100 users, and the goal is
4/second. While performing the stress
testing in this scenario, it will pass
because the load is greater (100 up)
than the actual desired load.
SCALABILITY TESTING
Checking the performance of an application by increasing or decreasing
the load in particular scales (no of a user) is known as scalability testing.
Upward scalability and downward scalability testing are called scalability
testing.
Scalability testing is divided into two parts which are as follows:
● Upward scalability testing
● Downward scalability testing
STABILITY TESTING
Checking the performance of an application by applying the load for a
particular duration of time is known as Stability Testing.
USABILITY TESTING
Usability Testing is a significant type of software testing technique,
which is comes under the non-functional testing.
It is primarily used in user-centered interaction design on order to check
the usability or ease of using a software product.
Checking the user-friendliness, efficiency, and accuracy of the
application is known as Usability Testing.
The primary purpose of executing the usability testing is to check that
the application should be easy to use for the end-user who is meant to
use it, whereas sustaining the client's specified functional and business
requirements.
COMPATIBILITY TESTING
It is part of non-functional testing.
Checking the functionality of an application on different software,
hardware platforms, network, and browsers is known as compatibility
testing.
Once the application is stable, we moved it to the production, it may
be used or accessed by multiple users on the different platforms, and
they may face some compatibility issues, to avoid these issues, we do
one round of compatibility testing.

More Related Content

PPTX
Software testing basic
PDF
Types of software testing
PPTX
Sftwre engg.testng
PPTX
black and white Box testing.pptx
PPTX
Software testing sengu
PDF
Comprehensive Guide to Understanding and Implementing Functional Testing
PDF
Fundamental of functional testing
PDF
Validation & verification software engineering
Software testing basic
Types of software testing
Sftwre engg.testng
black and white Box testing.pptx
Software testing sengu
Comprehensive Guide to Understanding and Implementing Functional Testing
Fundamental of functional testing
Validation & verification software engineering

Similar to Software Testing.pptx (20)

PPTX
Software Testing
PPTX
Software testing
PPTX
Software testing
PPTX
Session 05 - Testing Concepts
DOCX
Interview questions for manual testing technology.
PPSX
Introduction to software testing
PPTX
Software testing strategies
PPTX
SDET UNIT 2.pptx
PDF
Software testing ppt
PPT
Software testing
PPTX
Software testing
PPTX
Software Teting
PPTX
Software testing career 20180929 update
PPSX
Testing Concepts and Manual Testing
PPSX
Testing Concepts and Manual Testing
PPTX
Testing Concepts and Manual Testing
PPTX
Testing Concepts and Manual Testing
PPTX
Testing Concepts and Manual Testing
PPTX
Software testing career
PPTX
Testing and types of Testing
Software Testing
Software testing
Software testing
Session 05 - Testing Concepts
Interview questions for manual testing technology.
Introduction to software testing
Software testing strategies
SDET UNIT 2.pptx
Software testing ppt
Software testing
Software testing
Software Teting
Software testing career 20180929 update
Testing Concepts and Manual Testing
Testing Concepts and Manual Testing
Testing Concepts and Manual Testing
Testing Concepts and Manual Testing
Testing Concepts and Manual Testing
Software testing career
Testing and types of Testing
Ad

More from sonalshitole (6)

PPTX
flood prediction.pptx
PPTX
PASSWORD DOOR LOCK SYSTEM.pptx
PPTX
Manhole Monitoring.pptx
PPTX
NLP presentation.pptx
PPTX
FULL ADDER & FULL SUBTRACTOR.pptx
PPTX
Web Technology.pptx
flood prediction.pptx
PASSWORD DOOR LOCK SYSTEM.pptx
Manhole Monitoring.pptx
NLP presentation.pptx
FULL ADDER & FULL SUBTRACTOR.pptx
Web Technology.pptx
Ad

Recently uploaded (20)

PPTX
MCN 401 KTU-2019-PPE KITS-MODULE 2.pptx
PDF
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
PPTX
Sustainable Sites - Green Building Construction
PPTX
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
PPTX
Foundation to blockchain - A guide to Blockchain Tech
PDF
July 2025 - Top 10 Read Articles in International Journal of Software Enginee...
PPTX
Welding lecture in detail for understanding
PPTX
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
PDF
Model Code of Practice - Construction Work - 21102022 .pdf
PPTX
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
PPTX
UNIT-1 - COAL BASED THERMAL POWER PLANTS
PPTX
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
PDF
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
PPTX
Lecture Notes Electrical Wiring System Components
PDF
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
PDF
Well-logging-methods_new................
PPTX
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
PPTX
OOP with Java - Java Introduction (Basics)
PPTX
IOT PPTs Week 10 Lecture Material.pptx of NPTEL Smart Cities contd
PPTX
UNIT 4 Total Quality Management .pptx
MCN 401 KTU-2019-PPE KITS-MODULE 2.pptx
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
Sustainable Sites - Green Building Construction
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
Foundation to blockchain - A guide to Blockchain Tech
July 2025 - Top 10 Read Articles in International Journal of Software Enginee...
Welding lecture in detail for understanding
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
Model Code of Practice - Construction Work - 21102022 .pdf
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
UNIT-1 - COAL BASED THERMAL POWER PLANTS
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
Lecture Notes Electrical Wiring System Components
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
Well-logging-methods_new................
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
OOP with Java - Java Introduction (Basics)
IOT PPTs Week 10 Lecture Material.pptx of NPTEL Smart Cities contd
UNIT 4 Total Quality Management .pptx

Software Testing.pptx

  • 1. DIFFERENT TYPES OF SOFTWARE TESTING
  • 2. SOFTWARE TESTING Software testing is a process of identifying the correctness of software by considering its all attributes (Reliability, Scalability, Portability, Re-usability, Usability) and evaluating the execution of software components to find the software bugs or errors or defects.
  • 3. Software testing provides an independent view and objective of the software and gives surety of fitness of the software. It involves testing of all components under the required services to confirm that whether it is satisfying the specified requirements or not. The process is also providing the client with information about the quality of the software. Testing is mandatory because it will be a dangerous situation if the software fails any of time due to lack of testing. So, without testing software cannot be deployed to the end user.
  • 4. TESTING Testing is a group of techniques to determine the correctness of the application under the predefined script but, testing cannot find all the defect of application. The main intent of testing is to detect failures of the application so that failures can be discovered and corrected. It does not demonstrate that a product functions properly under all conditions but only that it is not working in some specific conditions.
  • 5. Testing furnishes comparison that compares the behavior and state of software against mechanisms because the problem can be recognized by the mechanism. The mechanism may include past versions of the same specified product, comparable products, and interfaces of expected purpose, relevant standards, or other criteria but not limited up to these. Testing includes an examination of code and also the execution of code in various environments, conditions as well as all the examining aspects of the code.
  • 6. In the current scenario of software development, a testing team may be separate from the development team so that Information derived from testing can be used to correct the process of software development. The success of software depends upon acceptance of its targeted audience, easy graphical user interface, strong functionality load test, etc. For example, the audience of banking is totally different from the audience of a video game. Therefore, when an organization develops a software product, it can assess whether the software product will be beneficial to its purchasers and other audience.
  • 7. Type of Software testing Principles of Testing:- (i) All the tests should meet the customer requirements. (ii) To make our software testing should be performed by a third party. (iii) Exhaustive testing is not possible. As we need the optimal amount of testing based on the risk assessment of the application. (iv) All the tests to be conducted should be planned before implementing it (v) It follows the Pareto rule(80/20 rule) which states that 80% of errors come from 20% of program components. (vi) Start testing with small parts and extend it to large parts.
  • 8. MANUAL TESTING Manual testing is a software testing process in which test cases are executed manually without using any automated tool. Manual testing is mandatory for every newly developed software before automated testing. This testing requires great efforts and time, but it gives the surety of bug-free software. Manual Testing requires knowledge of manual testing techniques but not of any automated testing tool.
  • 9. Types of Manual Testing There are various methods used for manual testing. Each technique is used according to its testing criteria. Types of manual testing are given below: ● White Box Testing ● Black Box Testing ● Gray Box Testing
  • 10. WHITE BOX TESTING White box testing which also known as glass box is testing, structural testing, clear box testing, open box testing and transparent box testing. It tests internal coding and infrastructure of a software focus on checking of predefined inputs against expected and desired outputs. It is based on inner workings of an application and revolves around internal structure testing. In this type of testing programming skills are required to design test cases. The primary goal of white box testing is to focus on the flow of inputs and outputs through the software and strengthening the security of the software.
  • 11. GREY BOX TESTING Greybox testing is a software testing method to test the software application with partial knowledge of the internal working structure. It is a combination of black box and white box testing because it involves access to internal coding to design test cases as white box testing and testing practices are done at functionality level as black box testing.
  • 12. BLACK BOX TESTING Black box testing is a technique of software testing which examines the functionality of software without peering into its internal structure or coding. The primary source of black box testing is a specification of requirements that is stated by the customer.
  • 13. FUNCTIONAL TESTING It is a type of software testing which is used to verify the functionality of the software application, whether the function is working according to the requirement specification. In functional testing, each function tested by giving the value, determining the output, and verifying the actual output with the expected value. Functional testing performed as black-box testing which is presented to confirm that the functionality of an application or system behaves as we are expecting.
  • 14. It is done to verify the functionality of the application. Functional testing also called as black-box testing, because it focuses on application specification rather than actual code. Tester has to test only the program rather than the system.
  • 16. UNIT TESTING Unit testing involves the testing of each unit or an individual component of the software application. It is the first level of functional testing. The aim behind unit testing is to validate unit components with its performance. Whenever the application is ready and given to the Test engineer, he/she will start checking every component of the module or module of the application independently or one by one, and this process is known as Unit testing or components testing.
  • 17. INTEGRATION TESTING Integration testing is the second level of the software testing process comes after unit testing. In this testing, units or individual components of the software are tested in a group. The focus of the integration testing level is to expose defects at the time of interaction between integrated components or units
  • 18. Once all the components or modules are working independently, then we need to check the data flow between the dependent modules is known as integration testing.
  • 19. INCREMENTAL TESTING In Incremental integration testing, the developers integrate the modules one by one using stubs or drivers to uncover the defects. This approach is known as incremental integration testing. To the contrary, big bang is one other integration testing technique, where all the modules are integrated in one shot.
  • 20. Incremental Testing Methodologies Top down Integration - This type of integration testing takes place from top to bottom. Unavailable Components or systems are substituted by stubs. Bottom Up Integration - This type of integration testing takes place from bottom to top. Unavailable Components or systems are substituted by Drivers. Functional incremental - The Integration and testing takes place on the basis of the functions or functionalities as per the functional specification document.
  • 21. NON-INCREMENTAL TESTING The non incremental approach is also known as “Big-Bang” testing. This approach is very unfashionable due to the level of risk that one takes in hoping that the system will perform as expected.
  • 22. SYSTEM TESTING System testing falls under Black box testing as it includes testing of the external working of the software. Testing follows user's perspective to identify minor defects. System Testing includes the following steps. ● Verification of input functions of the application to test whether it is producing the expected output or not. ● Testing of integrated software by including external peripherals to check the interaction of various components with each other. ● Testing of the whole system for End to End testing. ● Behavior testing of the application via auser's experience
  • 23. NON-FUNCTIONAL TESTING Non-functional testing is a type of software testing to test non-functional parameters such as reliability, load test, performance and accountability of the software. The primary purpose of non-functional testing is to test the reading speed of the software system as per non-functional parameters. The parameters of non-functional testing are never tested before the functional testing. Non-functional testing is also very important as functional testing because it plays a crucial role in customer satisfaction. For example, non-functional testing would be to test how many people can work simultaneously on any software.
  • 24. PERFORMANCE TESTING It is the most important part of non-functional testing. “Checking the behavior of an application by applying some load is known as performance testing.”
  • 25. LOAD TESTING The load testing is used to check the performance of an application by applying some load which is either less than or equal to the desired load is known as load testing. For example: In the below image, 1000 users are the desired load, which is given by the customer, and 3/second is the goal which we want to achieve while performing a load testing.
  • 26. STRESS TESTING The stress testing is testing, which checks the behavior of an application by applying load greater than the desired load. For example: If we took the above example and increased the desired load 1000 to 1100 users, and the goal is 4/second. While performing the stress testing in this scenario, it will pass because the load is greater (100 up) than the actual desired load.
  • 27. SCALABILITY TESTING Checking the performance of an application by increasing or decreasing the load in particular scales (no of a user) is known as scalability testing. Upward scalability and downward scalability testing are called scalability testing. Scalability testing is divided into two parts which are as follows: ● Upward scalability testing ● Downward scalability testing
  • 28. STABILITY TESTING Checking the performance of an application by applying the load for a particular duration of time is known as Stability Testing.
  • 29. USABILITY TESTING Usability Testing is a significant type of software testing technique, which is comes under the non-functional testing. It is primarily used in user-centered interaction design on order to check the usability or ease of using a software product. Checking the user-friendliness, efficiency, and accuracy of the application is known as Usability Testing. The primary purpose of executing the usability testing is to check that the application should be easy to use for the end-user who is meant to use it, whereas sustaining the client's specified functional and business requirements.
  • 30. COMPATIBILITY TESTING It is part of non-functional testing. Checking the functionality of an application on different software, hardware platforms, network, and browsers is known as compatibility testing. Once the application is stable, we moved it to the production, it may be used or accessed by multiple users on the different platforms, and they may face some compatibility issues, to avoid these issues, we do one round of compatibility testing.