SlideShare a Scribd company logo
Software Testing
What is Testing?
Testing is the process of evaluating a system or its component(s) with the
intent to find that whether it satisfies the specified requirements or not. This
activity results in the actual, expected and difference between their results. In
simple words testing is executing a system in order to identify any gaps,
errors or missing requirements in contrary to the actual desire or
requirements.
Testing can be defined as “A process of analyzing a software item to detect
the differences between existing and required conditions (that is
defects/errors/bugs) and to evaluate the features of the software item”.
Who does Testing?
It depends on the process and the associated stakeholders of the project(s).
In the IT industry, large companies have a team with responsibilities to
evaluate the developed software in the context of the given requirements.
Moreover, developers also conduct testing which is called Unit Testing. In
most cases, following professionals are involved in testing of a system within
their respective capacities:
 Software Tester
 Software Developer
 Project Lead/Manager
 End User
Diff between V&V
Verification Validation
Are you building it right? Are you building the right thing?
Ensure that the software system meets all
the functionality.
Ensure that functionalities meet the
intended behavior.
Verification takes place first and includes
the checking for documentation, code etc.
Validation occurs after verification and
mainly involves the checking of the overall
product.
Done by developers. Done by Testers.
Have static activities as it includes the
reviews, walkthroughs, and inspections to
verify that software is correct or not.
Have dynamic activities as it includes
executing the software against the
requirements.
It is an objective process and no subjective
decision should be needed to verify the
Software.
It is a subjective process and involves
subjective decisions on how well the
Software works.
QA QC TESTING
Activities which ensure the
implementation of
processes, procedures and
standards in context to
verification of developed
software and intended
requirements.
Activities which ensure the
verification of developed
software with respect to
documented (or not in some
cases) requirements.
Activities which ensure the
identification of
bugs/error/defects in the
Software.
Focuses on processes and
procedures rather then
conducting actual testing on
the system.
Focuses on actual testing by
executing Software with
intend to identify
bug/defect through
implementation of
procedures and process.
Focuses on actual testing.
Process oriented activities. Product oriented activities. Product oriented activities.
Preventive activities It is a corrective process. It is a preventive process
It is a subset of Software
Test Life Cycle (STLC)
QC can be considered as the
subset of Quality Assurance.
Testing is the subset of
Quality Control.
Diff between QA,QC & TESTING
Diff between Testing & Debugging
Testing: It involves the identification of bug/error/defect in the
software without correcting it. Normally professionals with a
Quality Assurance background are involved in the identification
of bugs. Testing is performed in the testing phase.
Debugging: It involves identifying, isolating and fixing the
problems/bug. Developers who code the software conduct
debugging upon encountering an error in the code. Debugging is
the part of White box or Unit Testing. Debugging can be
performed in the development phase while conducting Unit
Testing or in phases while fixing the reported bugs.
Testing Types
Manual Testing
This type includes the testing of the Software manually i.e. without using any
automated tool or any script. In this type the tester takes over the role of an
end user and test the Software to identify any un-expected behavior or bug.
There are different stages for manual testing like unit testing, Integration
testing, System testing and User Acceptance testing.
Testers use test plan, test cases or test scenarios to test the Software to
ensure the completeness of testing. Manual testing also includes exploratory
testing as testers explore the software to identify errors in it.
Testing Types
Automation Testing
Automation testing which is also known as “Test Automation”, is when the
tester writes scripts and uses another software to test the software. This
process involves automation of a manual process. Automation Testing is
used to re-run the test scenarios that were performed manually, quickly and
repeatedly.
Tools are,
Selenium (Functional, Database, Security, Performance & Web service Testing)
QTP (Functional, Database, Security, Performance & Web service Testing)
Load Runner (Stress & Load Testing)
SoapUI (JSON & XML Web Service Testing)
Testing Methods
S.no Black Box Testing Gray Box Testing White Box Testing
1 The Internal Workings of an
application are not required
to be known
Somewhat knowledge of
the internal workings are
known
Tester has full
knowledge of the
Internal workings of
the application
2 Also known as closed box
testing, data driven testing
and functional testing
Another term for grey box
testing is translucent
testing as the tester has
limited knowledge of the
insides of the application
Also known as clear
box testing, structural
testing or code based
testing
3 Performed by end users and
also by testers and
developers
Performed by end users
and also by testers and
developers
Normally done by
testers and
developers
4 Testing is based on external
expectations -Internal
behavior of the application is
Testing is done on the
basis of high level
database diagrams and
Internal workings are
fully known and the
tester can design test
Introduction to SDLC
What is SDLC?
The software development life cycle (SDLC) is the entire
process of formal, logical steps taken to develop a
software product.
Levels of SDLC
Requirements Gathering
Systems Design
Code Generation
Testing
Maintenance/Evolution
Software testing
Waterfall Model
Waterfall Model
The waterfall model derives its name due to the cascading effect from
one phase to the other as is illustrated in Figure. In this model each
phase well defined starting and ending point, with identifiable
deliveries to the next phase.
Prototyping Model
Prototyping Model
The Prototyping Model is a systems development method (SDM) in
which a prototype (an early approximation of a final system or
product) is built, tested, and then reworked as necessary until an
acceptable prototype is finally achieved from which the complete
system or product can now be developed.
Incremental Model
This model combines the elements of the waterfall model with the
iterative philosophy of prototyping. However, unlike prototyping the
IM focuses on the delivery of an operational product at the end of
each increment.
Spiral Model
The spiral model is a software development model combining
elements of both design and prototyping-in-stages, in an effort to
combine advantages of top-down and bottom-up concepts.
Agile Model
Agile software development is a group of software development
methods based on iterative and incremental development, where
requirements and solutions evolve through collaboration between self-
organizing, cross-functional teams.
Levels of Testing
Functional Testing.
Non- functional Testing.
Functional Testing
This is a type of black box testing that is based on the specifications of the
software that is to be tested. The application is tested by providing input and
then the results are examined that need to conform to the functionality it was
intended for. Functional Testing of the software is conducted on a complete,
integrated system to evaluate the system's compliance with its specified
requirements. There are five steps that are involved when testing an application
for functionality.
Step I - The determination of the functionality that the intended application is
meant to perform.
Step II - The creation of test data based on the specifications of the application.
Step III - The output based on the test data and the specifications of the
application.
Step IV - The writing of Test Scenarios and the execution of test cases.
Steps V - The comparison of actual and expected results based on the executed
test cases.
Functional Testing Types
Unit Testing
In Unit testing user is supposed to check each and every micro function.
All field level validations are expected to test at the stage of testing.
In most of the cases Developer will do this.
Integration Testing
The primary objective of integration testing is to discover errors in the interfaces
between Modules/Sub-Systems (Host & Client Interfaces).
Minimizing the errors which include internal and external Interface errors
Types of Integration Testing
Top-Down Approach
Bottom-Up Approach
Functional Testing Types
System Testing
The primary objective of system testing is to discover errors when the system is
tested as a hole.
System testing is also called as End-End Testing.
User is expected to test from Login-To-Logout by covering various business
functionalities.
Acceptance Testing
The primary objective of acceptance testing is to get the acceptance from
the client.
Testing the system behavior against customer’s requirements
Customers undertake typical tasks to check their requirements
Done at the customer’s premises on the user environment
Types of Acceptance Testing:
Alpha Testing
Beta Testing
Non-Functional Testing Types
Performance Testing
Primary objective of the performance testing is “to demonstrate the system works
functionally as per specifications with in given response time on a production sized
database.
Types of Performance Testing:
Load Testing
Stress Testing
Load Testing
Estimating the design capacity of the system within the resources limit
Approach is Load Profile
Stress Testing
Estimating the breakdown point of the system beyond the resources limit.
Repeatedly working on the same functionality
Non-Functional Testing Types
Usability Testing
To test the Easiness and User-friendliness of the system.
Reliability Testing
Reliability is considered as the probability of failure-free operation for a specified
time in a specified environment for a given purpose
To find Mean Time between failure/time available under specific load pattern.
Mean time for recovery.
Regression Testing
• Objective is to check the new functionalities has incorporated correctly with out
failing the existing functionalities.
• RAD – In case of Rapid Application development Regression Test plays a vital role
as the total development happens in bits and pieces.
• Testing the code problems have been fixed correctly or not.
Non-Functional Testing Types
Security Testing
Testing how well the system protects against unauthorized internal or external
access.
Verify how easily a system is subject to security violations under different
conditions and environments
During Security testing, password cracking, unauthorized entry into the
software, network security are all taken into consideration.
STLC- Software Testing Life Cycle
Practical:
Website
Web Application
Mobile Application
Ex Web Application: Facebook (login, Dashboard,
Messages, Profile, Settings functionalities)
Sample Websites
Software testing

More Related Content

PPTX
Software Testing
PPTX
Software evolution and Verification,validation
PPT
Types of Software testing
PPTX
Software Testing and Quality Assurance unit1
PPTX
Functional Testing
PDF
Agile Computer System Validation of software products
PDF
Testing types functional and nonfunctional - Kati Holasz
PPT
Software quality and testing (func. & non func.)
Software Testing
Software evolution and Verification,validation
Types of Software testing
Software Testing and Quality Assurance unit1
Functional Testing
Agile Computer System Validation of software products
Testing types functional and nonfunctional - Kati Holasz
Software quality and testing (func. & non func.)

What's hot (20)

PDF
What Is Functional Testing?
PPTX
functional testing
PPTX
Software testing strategies
PPT
Testing Types And Models
PPT
Testing strategies in Software Engineering
PPTX
Software testing sengu
PPTX
Software testing career 20180929 update
PDF
Software testing methods, levels and types
PPTX
softwaretestingppt-FINAL-PPT-1
PPTX
Manual testing interview questions and answers
PPTX
Software Testing
PPTX
Introduction to software testing
PDF
Functional Testing Tutorial | Edureka
PPT
Software Testing
PPTX
STLC– software testing life cycle
ODP
Software testing ppt
PPTX
Software testing
PDF
Types of Software Testing | Edureka
PPTX
Software testing
What Is Functional Testing?
functional testing
Software testing strategies
Testing Types And Models
Testing strategies in Software Engineering
Software testing sengu
Software testing career 20180929 update
Software testing methods, levels and types
softwaretestingppt-FINAL-PPT-1
Manual testing interview questions and answers
Software Testing
Introduction to software testing
Functional Testing Tutorial | Edureka
Software Testing
STLC– software testing life cycle
Software testing ppt
Software testing
Types of Software Testing | Edureka
Software testing
Ad

Similar to Software testing (20)

PPTX
Software Testing
PPTX
Software testing basic
PDF
Real Time software Training in Nagercoil
PPTX
Software testing
PPTX
Software testing & Quality Assurance
PPSX
Introduction to software testing
PPTX
Learn sqa from expert class 2reviewed
DOCX
What is Software Testing Lifecycle?
PDF
Validation & verification software engineering
PPTX
SDET UNIT 2.pptx
PPTX
SOFTWARE TESTING
PPSX
Manual testing
PPTX
Software Testing - A sneak preview By Srikanth
DOCX
Unit 4 Software engineering deatiled notes.docx
PPSX
Manual testing
PPTX
Types of testing
DOCX
Testing in Software Engineering.docx
PDF
Types of software testing
PPTX
unit 4.pptx very needful and important p
Software Testing
Software testing basic
Real Time software Training in Nagercoil
Software testing
Software testing & Quality Assurance
Introduction to software testing
Learn sqa from expert class 2reviewed
What is Software Testing Lifecycle?
Validation & verification software engineering
SDET UNIT 2.pptx
SOFTWARE TESTING
Manual testing
Software Testing - A sneak preview By Srikanth
Unit 4 Software engineering deatiled notes.docx
Manual testing
Types of testing
Testing in Software Engineering.docx
Types of software testing
unit 4.pptx very needful and important p
Ad

Recently uploaded (20)

PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
Designing Intelligence for the Shop Floor.pdf
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PPTX
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
PDF
Download FL Studio Crack Latest version 2025 ?
PDF
medical staffing services at VALiNTRY
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PDF
Autodesk AutoCAD Crack Free Download 2025
PDF
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
PDF
AutoCAD Professional Crack 2025 With License Key
PPTX
history of c programming in notes for students .pptx
PDF
Tally Prime Crack Download New Version 5.1 [2025] (License Key Free
PDF
How to Make Money in the Metaverse_ Top Strategies for Beginners.pdf
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PPTX
Monitoring Stack: Grafana, Loki & Promtail
PPTX
Computer Software and OS of computer science of grade 11.pptx
PPTX
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
Operating system designcfffgfgggggggvggggggggg
Designing Intelligence for the Shop Floor.pdf
Odoo Companies in India – Driving Business Transformation.pdf
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Wondershare Filmora 15 Crack With Activation Key [2025
Design an Analysis of Algorithms II-SECS-1021-03
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
Download FL Studio Crack Latest version 2025 ?
medical staffing services at VALiNTRY
How to Choose the Right IT Partner for Your Business in Malaysia
Autodesk AutoCAD Crack Free Download 2025
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
AutoCAD Professional Crack 2025 With License Key
history of c programming in notes for students .pptx
Tally Prime Crack Download New Version 5.1 [2025] (License Key Free
How to Make Money in the Metaverse_ Top Strategies for Beginners.pdf
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Monitoring Stack: Grafana, Loki & Promtail
Computer Software and OS of computer science of grade 11.pptx
Embracing Complexity in Serverless! GOTO Serverless Bengaluru

Software testing

  • 2. What is Testing? Testing is the process of evaluating a system or its component(s) with the intent to find that whether it satisfies the specified requirements or not. This activity results in the actual, expected and difference between their results. In simple words testing is executing a system in order to identify any gaps, errors or missing requirements in contrary to the actual desire or requirements. Testing can be defined as “A process of analyzing a software item to detect the differences between existing and required conditions (that is defects/errors/bugs) and to evaluate the features of the software item”.
  • 3. Who does Testing? It depends on the process and the associated stakeholders of the project(s). In the IT industry, large companies have a team with responsibilities to evaluate the developed software in the context of the given requirements. Moreover, developers also conduct testing which is called Unit Testing. In most cases, following professionals are involved in testing of a system within their respective capacities:  Software Tester  Software Developer  Project Lead/Manager  End User
  • 4. Diff between V&V Verification Validation Are you building it right? Are you building the right thing? Ensure that the software system meets all the functionality. Ensure that functionalities meet the intended behavior. Verification takes place first and includes the checking for documentation, code etc. Validation occurs after verification and mainly involves the checking of the overall product. Done by developers. Done by Testers. Have static activities as it includes the reviews, walkthroughs, and inspections to verify that software is correct or not. Have dynamic activities as it includes executing the software against the requirements. It is an objective process and no subjective decision should be needed to verify the Software. It is a subjective process and involves subjective decisions on how well the Software works.
  • 5. QA QC TESTING Activities which ensure the implementation of processes, procedures and standards in context to verification of developed software and intended requirements. Activities which ensure the verification of developed software with respect to documented (or not in some cases) requirements. Activities which ensure the identification of bugs/error/defects in the Software. Focuses on processes and procedures rather then conducting actual testing on the system. Focuses on actual testing by executing Software with intend to identify bug/defect through implementation of procedures and process. Focuses on actual testing. Process oriented activities. Product oriented activities. Product oriented activities. Preventive activities It is a corrective process. It is a preventive process It is a subset of Software Test Life Cycle (STLC) QC can be considered as the subset of Quality Assurance. Testing is the subset of Quality Control. Diff between QA,QC & TESTING
  • 6. Diff between Testing & Debugging Testing: It involves the identification of bug/error/defect in the software without correcting it. Normally professionals with a Quality Assurance background are involved in the identification of bugs. Testing is performed in the testing phase. Debugging: It involves identifying, isolating and fixing the problems/bug. Developers who code the software conduct debugging upon encountering an error in the code. Debugging is the part of White box or Unit Testing. Debugging can be performed in the development phase while conducting Unit Testing or in phases while fixing the reported bugs.
  • 7. Testing Types Manual Testing This type includes the testing of the Software manually i.e. without using any automated tool or any script. In this type the tester takes over the role of an end user and test the Software to identify any un-expected behavior or bug. There are different stages for manual testing like unit testing, Integration testing, System testing and User Acceptance testing. Testers use test plan, test cases or test scenarios to test the Software to ensure the completeness of testing. Manual testing also includes exploratory testing as testers explore the software to identify errors in it.
  • 8. Testing Types Automation Testing Automation testing which is also known as “Test Automation”, is when the tester writes scripts and uses another software to test the software. This process involves automation of a manual process. Automation Testing is used to re-run the test scenarios that were performed manually, quickly and repeatedly. Tools are, Selenium (Functional, Database, Security, Performance & Web service Testing) QTP (Functional, Database, Security, Performance & Web service Testing) Load Runner (Stress & Load Testing) SoapUI (JSON & XML Web Service Testing)
  • 9. Testing Methods S.no Black Box Testing Gray Box Testing White Box Testing 1 The Internal Workings of an application are not required to be known Somewhat knowledge of the internal workings are known Tester has full knowledge of the Internal workings of the application 2 Also known as closed box testing, data driven testing and functional testing Another term for grey box testing is translucent testing as the tester has limited knowledge of the insides of the application Also known as clear box testing, structural testing or code based testing 3 Performed by end users and also by testers and developers Performed by end users and also by testers and developers Normally done by testers and developers 4 Testing is based on external expectations -Internal behavior of the application is Testing is done on the basis of high level database diagrams and Internal workings are fully known and the tester can design test
  • 10. Introduction to SDLC What is SDLC? The software development life cycle (SDLC) is the entire process of formal, logical steps taken to develop a software product. Levels of SDLC Requirements Gathering Systems Design Code Generation Testing Maintenance/Evolution
  • 12. Waterfall Model Waterfall Model The waterfall model derives its name due to the cascading effect from one phase to the other as is illustrated in Figure. In this model each phase well defined starting and ending point, with identifiable deliveries to the next phase.
  • 13. Prototyping Model Prototyping Model The Prototyping Model is a systems development method (SDM) in which a prototype (an early approximation of a final system or product) is built, tested, and then reworked as necessary until an acceptable prototype is finally achieved from which the complete system or product can now be developed.
  • 14. Incremental Model This model combines the elements of the waterfall model with the iterative philosophy of prototyping. However, unlike prototyping the IM focuses on the delivery of an operational product at the end of each increment.
  • 15. Spiral Model The spiral model is a software development model combining elements of both design and prototyping-in-stages, in an effort to combine advantages of top-down and bottom-up concepts.
  • 16. Agile Model Agile software development is a group of software development methods based on iterative and incremental development, where requirements and solutions evolve through collaboration between self- organizing, cross-functional teams.
  • 17. Levels of Testing Functional Testing. Non- functional Testing.
  • 18. Functional Testing This is a type of black box testing that is based on the specifications of the software that is to be tested. The application is tested by providing input and then the results are examined that need to conform to the functionality it was intended for. Functional Testing of the software is conducted on a complete, integrated system to evaluate the system's compliance with its specified requirements. There are five steps that are involved when testing an application for functionality. Step I - The determination of the functionality that the intended application is meant to perform. Step II - The creation of test data based on the specifications of the application. Step III - The output based on the test data and the specifications of the application. Step IV - The writing of Test Scenarios and the execution of test cases. Steps V - The comparison of actual and expected results based on the executed test cases.
  • 19. Functional Testing Types Unit Testing In Unit testing user is supposed to check each and every micro function. All field level validations are expected to test at the stage of testing. In most of the cases Developer will do this. Integration Testing The primary objective of integration testing is to discover errors in the interfaces between Modules/Sub-Systems (Host & Client Interfaces). Minimizing the errors which include internal and external Interface errors Types of Integration Testing Top-Down Approach Bottom-Up Approach
  • 20. Functional Testing Types System Testing The primary objective of system testing is to discover errors when the system is tested as a hole. System testing is also called as End-End Testing. User is expected to test from Login-To-Logout by covering various business functionalities. Acceptance Testing The primary objective of acceptance testing is to get the acceptance from the client. Testing the system behavior against customer’s requirements Customers undertake typical tasks to check their requirements Done at the customer’s premises on the user environment Types of Acceptance Testing: Alpha Testing Beta Testing
  • 21. Non-Functional Testing Types Performance Testing Primary objective of the performance testing is “to demonstrate the system works functionally as per specifications with in given response time on a production sized database. Types of Performance Testing: Load Testing Stress Testing Load Testing Estimating the design capacity of the system within the resources limit Approach is Load Profile Stress Testing Estimating the breakdown point of the system beyond the resources limit. Repeatedly working on the same functionality
  • 22. Non-Functional Testing Types Usability Testing To test the Easiness and User-friendliness of the system. Reliability Testing Reliability is considered as the probability of failure-free operation for a specified time in a specified environment for a given purpose To find Mean Time between failure/time available under specific load pattern. Mean time for recovery. Regression Testing • Objective is to check the new functionalities has incorporated correctly with out failing the existing functionalities. • RAD – In case of Rapid Application development Regression Test plays a vital role as the total development happens in bits and pieces. • Testing the code problems have been fixed correctly or not.
  • 23. Non-Functional Testing Types Security Testing Testing how well the system protects against unauthorized internal or external access. Verify how easily a system is subject to security violations under different conditions and environments During Security testing, password cracking, unauthorized entry into the software, network security are all taken into consideration.
  • 25. Practical: Website Web Application Mobile Application Ex Web Application: Facebook (login, Dashboard, Messages, Profile, Settings functionalities) Sample Websites