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
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

What's hot

Introduction to software testing
Introduction to software testingIntroduction to software testing
Introduction to software testingVenkat Alagarsamy
 
Software testing
Software testingSoftware testing
Software testing basic
Software testing basicSoftware testing basic
Software testing basic
Rohit Singh
 
Types of testing
Types of testingTypes of testing
Types of testing
Valarmathi Srinivasan
 
Software Testing
Software Testing Software Testing
Software Testing
CHANDAN CHATURVEDI
 
Software testing
Software testingSoftware testing
Software testing
Ahmed Moawad
 
Software Testing or Quality Assurance
Software Testing or Quality AssuranceSoftware Testing or Quality Assurance
Software Testing or Quality Assurance
Trimantra Software Solutions
 
Software testing
Software testingSoftware testing
Software testing
Bhagyashree pathak
 
Types of Software testing
Types of  Software testingTypes of  Software testing
Types of Software testingMakan Singh
 
What are Software Testing Methodologies | Software Testing Techniques | Edureka
What are Software Testing Methodologies | Software Testing Techniques | EdurekaWhat are Software Testing Methodologies | Software Testing Techniques | Edureka
What are Software Testing Methodologies | Software Testing Techniques | Edureka
Edureka!
 
Functional Testing
Functional TestingFunctional Testing
Functional Testing
Precise Testing Solution
 
Interview questions for manual testing technology.
Interview questions for manual testing technology.Interview questions for manual testing technology.
Interview questions for manual testing technology.
Vinay Agnihotri
 
Software testing.ppt
Software testing.pptSoftware testing.ppt
Software testing.ppt
Komal Garg
 
Software testing
Software testing Software testing
Software testing
Kunal Prajapati
 
Best software testing course
Best software testing courseBest software testing course
Best software testing course
bestonlinecoursescoupon
 
Manual testing interview questions and answers
Manual testing interview questions and answersManual testing interview questions and answers
Manual testing interview questions and answers
Rajnish Sharma
 
Software Testing and Quality Assurance unit1
Software Testing and Quality Assurance  unit1Software Testing and Quality Assurance  unit1
Software Testing and Quality Assurance unit1
Bhagyashree Dhakulkar
 
Testing strategies in Software Engineering
Testing strategies in Software EngineeringTesting strategies in Software Engineering
Testing strategies in Software Engineering
MuhammadTalha436
 

What's hot (19)

Introduction to software testing
Introduction to software testingIntroduction to software testing
Introduction to software testing
 
Software testing
Software testingSoftware testing
Software testing
 
Testing
TestingTesting
Testing
 
Software testing basic
Software testing basicSoftware testing basic
Software testing basic
 
Types of testing
Types of testingTypes of testing
Types of testing
 
Software Testing
Software Testing Software Testing
Software Testing
 
Software testing
Software testingSoftware testing
Software testing
 
Software Testing or Quality Assurance
Software Testing or Quality AssuranceSoftware Testing or Quality Assurance
Software Testing or Quality Assurance
 
Software testing
Software testingSoftware testing
Software testing
 
Types of Software testing
Types of  Software testingTypes of  Software testing
Types of Software testing
 
What are Software Testing Methodologies | Software Testing Techniques | Edureka
What are Software Testing Methodologies | Software Testing Techniques | EdurekaWhat are Software Testing Methodologies | Software Testing Techniques | Edureka
What are Software Testing Methodologies | Software Testing Techniques | Edureka
 
Functional Testing
Functional TestingFunctional Testing
Functional Testing
 
Interview questions for manual testing technology.
Interview questions for manual testing technology.Interview questions for manual testing technology.
Interview questions for manual testing technology.
 
Software testing.ppt
Software testing.pptSoftware testing.ppt
Software testing.ppt
 
Software testing
Software testing Software testing
Software testing
 
Best software testing course
Best software testing courseBest software testing course
Best software testing course
 
Manual testing interview questions and answers
Manual testing interview questions and answersManual testing interview questions and answers
Manual testing interview questions and answers
 
Software Testing and Quality Assurance unit1
Software Testing and Quality Assurance  unit1Software Testing and Quality Assurance  unit1
Software Testing and Quality Assurance unit1
 
Testing strategies in Software Engineering
Testing strategies in Software EngineeringTesting strategies in Software Engineering
Testing strategies in Software Engineering
 

Similar to Software testing

Software Testing
Software TestingSoftware Testing
Software Testing
Sengu Msc
 
Real Time software Training in Nagercoil
Real Time software Training in NagercoilReal Time software Training in Nagercoil
Real Time software Training in Nagercoil
jclick2
 
Software testing & Quality Assurance
Software testing & Quality Assurance Software testing & Quality Assurance
Software testing & Quality Assurance
Webtech Learning
 
What is Software Testing Lifecycle?
What is Software Testing Lifecycle? What is Software Testing Lifecycle?
What is Software Testing Lifecycle?
STEPIN2IT
 
Validation & verification software engineering
Validation & verification software engineeringValidation & verification software engineering
Validation & verification software engineering
Sweta Kumari Barnwal
 
UNIT 2.pptx
UNIT 2.pptxUNIT 2.pptx
UNIT 2.pptx
PallawiBulakh1
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
acemindia
 
Software Testing - A sneak preview By Srikanth
Software Testing - A sneak preview By SrikanthSoftware Testing - A sneak preview By Srikanth
Software Testing - A sneak preview By SrikanthSrikanth Krishnamoorthy
 
Software test life cycle
Software test life cycleSoftware test life cycle
Manual testing
Manual testingManual testing
Manual testing
Vivek V
 
softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1FAIZALSAIYED
 
Types of testing
Types of testingTypes of testing
Types of testing
Sonam Agarwal
 
Testing in Software Engineering.docx
Testing in Software Engineering.docxTesting in Software Engineering.docx
Testing in Software Engineering.docx
8759000398
 
unit 4.pptx very needful and important p
unit 4.pptx very needful and important punit 4.pptx very needful and important p
unit 4.pptx very needful and important p
20EC040
 
SWE-401 - 10. Software Testing Overview
SWE-401 - 10. Software Testing OverviewSWE-401 - 10. Software Testing Overview
SWE-401 - 10. Software Testing Overview
ghayour abbas
 
10. Software testing overview
10. Software testing overview10. Software testing overview
10. Software testing overview
ghayour abbas
 
Different Software Testing Types and CMM Standard
Different Software Testing Types and CMM StandardDifferent Software Testing Types and CMM Standard
Different Software Testing Types and CMM Standard
Dhrumil Panchal
 
Software testing career 20180929 update
Software testing career 20180929 updateSoftware testing career 20180929 update
Software testing career 20180929 update
Ahmed Ahmed Mokhtar
 
CTFL Module 02
CTFL Module 02CTFL Module 02
CTFL Module 02
Davis Thomas
 

Similar to Software testing (20)

Software Testing
Software TestingSoftware Testing
Software Testing
 
Real Time software Training in Nagercoil
Real Time software Training in NagercoilReal Time software Training in Nagercoil
Real Time software Training in Nagercoil
 
Software testing & Quality Assurance
Software testing & Quality Assurance Software testing & Quality Assurance
Software testing & Quality Assurance
 
What is Software Testing Lifecycle?
What is Software Testing Lifecycle? What is Software Testing Lifecycle?
What is Software Testing Lifecycle?
 
Validation & verification software engineering
Validation & verification software engineeringValidation & verification software engineering
Validation & verification software engineering
 
UNIT 2.pptx
UNIT 2.pptxUNIT 2.pptx
UNIT 2.pptx
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
 
Manual testing
Manual testingManual testing
Manual testing
 
Software Testing - A sneak preview By Srikanth
Software Testing - A sneak preview By SrikanthSoftware Testing - A sneak preview By Srikanth
Software Testing - A sneak preview By Srikanth
 
Software test life cycle
Software test life cycleSoftware test life cycle
Software test life cycle
 
Manual testing
Manual testingManual testing
Manual testing
 
softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1
 
Types of testing
Types of testingTypes of testing
Types of testing
 
Testing in Software Engineering.docx
Testing in Software Engineering.docxTesting in Software Engineering.docx
Testing in Software Engineering.docx
 
unit 4.pptx very needful and important p
unit 4.pptx very needful and important punit 4.pptx very needful and important p
unit 4.pptx very needful and important p
 
SWE-401 - 10. Software Testing Overview
SWE-401 - 10. Software Testing OverviewSWE-401 - 10. Software Testing Overview
SWE-401 - 10. Software Testing Overview
 
10. Software testing overview
10. Software testing overview10. Software testing overview
10. Software testing overview
 
Different Software Testing Types and CMM Standard
Different Software Testing Types and CMM StandardDifferent Software Testing Types and CMM Standard
Different Software Testing Types and CMM Standard
 
Software testing career 20180929 update
Software testing career 20180929 updateSoftware testing career 20180929 update
Software testing career 20180929 update
 
CTFL Module 02
CTFL Module 02CTFL Module 02
CTFL Module 02
 

Recently uploaded

Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
Matt Welsh
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
Designing for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web ServicesDesigning for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web Services
KrzysztofKkol1
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Globus
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
informapgpstrackings
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke
 
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Anthony Dahanne
 
Advanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should KnowAdvanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should Know
Peter Caitens
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
Ortus Solutions, Corp
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
Ortus Solutions, Corp
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
takuyayamamoto1800
 
Why React Native as a Strategic Advantage for Startup Innovation.pdf
Why React Native as a Strategic Advantage for Startup Innovation.pdfWhy React Native as a Strategic Advantage for Startup Innovation.pdf
Why React Native as a Strategic Advantage for Startup Innovation.pdf
ayushiqss
 
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
XfilesPro
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Globus
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Shahin Sheidaei
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
Georgi Kodinov
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
Globus
 

Recently uploaded (20)

Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
Designing for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web ServicesDesigning for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web Services
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
 
Vitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume MontevideoVitthal Shirke Microservices Resume Montevideo
Vitthal Shirke Microservices Resume Montevideo
 
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
 
Advanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should KnowAdvanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should Know
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
 
Why React Native as a Strategic Advantage for Startup Innovation.pdf
Why React Native as a Strategic Advantage for Startup Innovation.pdfWhy React Native as a Strategic Advantage for Startup Innovation.pdf
Why React Native as a Strategic Advantage for Startup Innovation.pdf
 
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
 

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
  • 11.
  • 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