SlideShare a Scribd company logo
1 of 63
SDLC
Software Development Life Cycle
Software Development Life Cycle
Software Development Life Cycle is a process of
development of Software.
A Frame work that describes the activities
performed at each stage of a Software Development
Life Cycle.
Different Phases in SDLC
REQUIREMENT
FEASIBILITY
STUDY
DESIGN
CODING
TESTING
MAINTENANCE
REQUIREMENTPHASE
Testing should begin in the requirements phase of the Software
Development Life Cycle.
Requirements will be collected from the clients.
Requirements definition is the process by which the needs of the
customer are translated into a clear, detailed specification of what
the system must do
FEASIBILITY STUDY
Feasibility study is used to determine if the
project should get the go-head.
In this phase, the development team visits
the customer and studies their system
DESIGN PHASE
During design phase, testers work with developers
in determining what aspects of a design are testable
and with what parameters those tests works.
Types of design
• High level design [HLD]
• Low level design [LLD]
CODINGPHASE
After design we do coding.
The design must be translated into machine readable form.
Different High level programming languages like c, c++, java
are used for coding.
With respect to the type of application, the right
programming language is chosen.
TESTING
Once code is generated , the software program testing
begins.
Testing is nothing but catching bugs or executing the
program.
MAINTENANCE
A good software product should effectively respond
to the changing requirement of the customer or
user.
Different Phases
Project Start-up
Requirement
System Analysis
System Design
Coding & UnitTesting
System Testing
Acceptance testing
Maintenance
SRS
SAS
HLD, STS
Programs,
Documentation, Test
Results, etc.Test Result ,Defect
Logs Etc
Test Reports
Installation,
UserTraining,
System Analysts and
Users
System Analysts
System Designers
Programmers, Testers QA
team, etc
Testers, QA
Team,Development
team,etc
Client, Testers
Technical Support Team
Project plan,
standards, etc.
Project Leader, designers
Different SDLC Models
The Waterfall Model
 The Spiral Model
 The V Model
 The Prototype Model
 The Hybrid Model
The Water fall Model
REQUIREMENT
FEASIBILITY
STUDY
DESIGN
CODING
TESTING
MAINTENANCE
The Water fall Model
 It is orderly and simple to understand
 It represents a process that is easy to manage and
measure
 Each phase is completed before the next is
started.
 There is no scope for jumping backward or
forward or performing two steps simultaneously
 Not useful for complicated systems
 This can often leads to waste of time and money
The Spiral Model
 Regarded as one of the best models
It is used when requirements are collected in step
wise
Risk analysis
Planning
Specification and design
System complexity and size grows with increasing
radius, as do investment and risk
Proto type model
Requirement
Feasibility
Prototype Design
Coding
Testing
Prototype coding
Approval Real design
Prototype testing
Maintance
Proto type model
Prototype model is nothing but dummy model
This model is used when customer is new to the field.
Once the requirement analysis is done, a prototype is made
It is then given to the customer for evaluation. The customer
tests the package and gives his/her feed back
V Model
V Model
This model follows both a ‘top-down’ as well as a
‘bottom-up’ approach.
In this case, both the development and testing
activities go hand-in-hand. For ex: as the
development team goes about its requirement
analysis activities, the testing team simultaneously
begins with its acceptance testing activities.
Hybrid Model
Combination of prototype and other model is known
as Hybrid model
Prototype model + V model and
Prototype + Spiral model
Agile Methodology
The principles of Agile Methodology are:
Individuals and interactions over process and tools
Working software over comprehensive documentation
Customer Collaboration over contract negotiation
Responding to Changeover following a plan.
TESTING
TESTING
Agenda
Introduction to software testing
Characteristics of a test engineer
Advantage of software testing
Why software testing is difficult
Levels of testing
Types of testing
Introduction
Testing means catching bugs or executing
the program.
Characteristics of Test Engineer
 Characteristics of Test Engineer
 Understand the application
 Learn about development environment
 Learn how to use application
 Study the source code
 Study requirement specification document
 Understand the application is developed as set of modules
Levels of Testing
A Practical approach is to divide the testing process into different
levels
Levels of Testing
Unit Testing ----------
Integration Testing ----------
System Testing ----------
Acceptance Testing ---------
CODE
Customer
needs
SRS
DESIGE
Unit Testing
Unit testing is also known as functional testing.
This testing is use to check each behavior of a each feature’s of an
application.
Unit is the smallest entity in the software
In unit testing both positive testing and negative testing is done.
Every unit has to be tested separately to check whether it is as per
the specification
Integration & System Testing
The integration testing has to be done to check
whether there is a data flow between 2 module.
System testing is nothing but N to N testing.
Entire system is tested as per the requirements.
Test plan and Test case
Test plan is a document which contain all the
activities of testing.
Test case is the smallest unit of testing. The test
case contains information such as requirements
testing, test steps, verification steps, outputs
and test environment etc.
TYPE OF TESTING
TYPE OF TESTING
TYPES OF TESTING
BLACK BOX TESTING
WHITE BOX TESTING
GRAY BOX TESTING
Black Box Testing
Black box testing is also known as Skin box testing or
Closed box testing.
In black box testing we do testing on application by
looking into the requirements and by looking a test case
testing is done on application.
In Black Box Testing we just focus on inputs and output
of the Software system without bothering about
internal knowledge of the software program.
Types of Testing
Types of Testing
Functional Non-Functional Maintenance
Unit testing Performance Regression
Integration testing Load
Smoke/Sanity Stress
User Acceptance Volume
Globalization Smoke
Localization Accessibility
Different Phases in SDLC
Functional testing–This black box testing type is related to
functional requirements of a system; it is done by software
testers.
Non-functional testing –This type of black box testing is not
related to testing of a specific functionality , but non-functional
requirement such as performance, usability.
Regression testing –Regression testing is done after code fixes ,
upgrades or any other system maintenance to check the new code
has not affected the existing code.
TYPES OF BLACK BOX TESTING
 Functional testing
 Integration testing
 System testing
FUNCTIONAL TESTING
Functional testing is also known as unit testing.
This testing is used to check each behavior of a each
feature’s of an application.
Types of functional testing
Positive testing
Negative testing
INTEGRATION TESTING
Integration testing is done to check whether there is a
data flow between each modules.
In this phase of testing, individual modules are
combined and tested as a group.
Data transfer between the modules are tested
thoroughly.
Integration testing is carried out by the testers.
SYSTEM TESTING
System testing is concerned with the behavior of the system as a
whole
Unlike Integration testing , which focuses on data transfer amongst
modules System testing checks complete end to end scenarios, as
the way a customer would use the system.
System testing is nothing but N to N testing. Or end to end testing.
i.e. entire system is tested as per the requirements.
White Box Testing
White box testing is also known as Clear box testing or Glass box
testing.
Testing is done by the developers.
White box testing is used for testing each and every line of the code.
GRAY BOX TESTING
 Combination of White box testing and Black box testing is
known as Gray box testing.
ACCEPTANCE TESTING
Is usually done at client location by the client.
Once the defects found in system testing phase is fixed.
Focuses of Acceptance Testing is not to find the defects
but to check whether the system meets their
requirements
Testing is done to ensure that user/customer to
determine whether to accept the software product.
Alpha testing
In Alpha testing house virtual user environment can be created
for this type of testing. Testing is done at the end of the
development. Still minor deign changes may be made as a
result of such testing.
In Alpha testing a small set of employees of the client (in case
of the bank employees )will test the application.
Deletion, modification and addition of coding can be done.
Beta Testing
In Beta testing , testing is typically done by end-users or
others. Final testing before releasing application for
commercial purpose.
In Beta testing a small set of customer in the case the
bank account holders will test the application.
Smoke /Sanity Testing
If the critical defects bare present to check that we go for
Smoke/Sanity Testing.
 To avoid that we do Sanity/Smoke testing to check the critical
functionality of the system before it is accepted for major
testing.
 Goal is not to find the defects but to check System health.
USABILITY TESTING
Testing the user friendliness of an application is
known as usability testing.
Tested by the customer.
Look and feel.
90-95% is done by testing engineer now a days.
ACCESSIBILITY TESTING
Verifying a product is accessible to the people having
disabilities like Blind, deaf and mentally disable is known
as Accessibility testing
RANDOM TESTING
It is also known as Ad-hock or Monkey testing.
In this without any test case testing is done on
application randomly.
COMPATIBILITY TESTING
Testing how well software performs in a
particular hardware/software/operating
system/network environment and different
combinations.
COMPARISON TESTING
 Compare the environment between the
developing team and testing team.
GLOBALIZATION TESTING
Testing an application developed in many language is known as
globalization testing.
We do testing in
 Internationalization testing
 Localization testing
LOCALIZATION TESTING
 It will be changed according to country
wise (means different country).
Non-Functional Testing
A part from functional testing, non-functional
requirements like Performance, Usability, Load Testing
is also important.
PERFORMANCE TESTING
Testing the stability and response time of an application by
applying a load is known as performance testing.
Performance testing checks the response time. The goal here is to
reduce the response time to an acceptance value.
Focuses on performance parameters such as Transaction response
time, throughput etc
LOAD TESTING
Testing the stability and response time of an
application by applying load which is less then or equal
to desired number of users and then test the response
time .
STRESS TESTING
Testing the stability and response time of an application by
applying stress by more number of users and then test the
response time.
RECOVERY TESTING
 After crashing the application we test the application to
check how well it recovers from crash is called recovery
testing
Test cases
Test case can be defined as sets of input parameters for which the
software will be tested.
REGRESSION TESTING
 Adding the new feature may effect the old one so to over
come that we go for regression testing and we do repeating
testing to make the application stable….
 Developermakessomechangestothesoftwaretoremovethedefe
ctfound.Itislikelythatthechangesmadeinthecodemayleadtoanot
herdefectthatmaynotbevisibleimmediately.
RETESTING
 After doing additional testing. We find a bugs and it is sent to
the developer and after fixing the bugs, it is sent back to the
test engineer and he will test the bugs whether it is fixed or not.
Difference between Verification and Validation
Verification typically involves reviews, plans, code, requirement
and specifications.
Verification: Are we building the product right..
Validation typically involves actual testing and takes place after
verifications are completed.
Validation: Are we building the right product..
SOFTWARE QUALITY ASSURANCE
Software quality assurance (SQA) involves the entire software
development process. i.e. monitoring and improving the process.
DEFECT LIFE CYCLE
NEW
OPEN
ASSIGN
TEST
VERIFICATION
CLOSE
RE-OPEN
REJECT
DEFERRED
CHANDAN CHATURVEDI

More Related Content

What's hot

Tools for Software Verification and Validation
Tools for Software Verification and ValidationTools for Software Verification and Validation
Tools for Software Verification and Validationaliraza786
 
Software quality and testing (func. & non func.)
Software quality and testing (func. & non   func.)Software quality and testing (func. & non   func.)
Software quality and testing (func. & non func.)Pragya G
 
Software testing sengu
Software testing  senguSoftware testing  sengu
Software testing senguSengu Msc
 
Unit 7 verification & validation
Unit 7 verification & validationUnit 7 verification & validation
Unit 7 verification & validationraksharao
 
Software Testing and Quality Assurance unit1
Software Testing and Quality Assurance  unit1Software Testing and Quality Assurance  unit1
Software Testing and Quality Assurance unit1Bhagyashree Dhakulkar
 
Object Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slidesObject Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slidesPunjab University
 
Software testing
Software testingSoftware testing
Software testingmkn3009
 
Introduction to software testing
Introduction to software testingIntroduction to software testing
Introduction to software testingHadi Fadlallah
 
Types of Software testing
Types of  Software testingTypes of  Software testing
Types of Software testingMakan Singh
 
Software Engineering- Types of Testing
Software Engineering- Types of TestingSoftware Engineering- Types of Testing
Software Engineering- Types of TestingTrinity Dwarka
 
verification and validation
verification and validationverification and validation
verification and validationDinesh Pasi
 

What's hot (20)

Tools for Software Verification and Validation
Tools for Software Verification and ValidationTools for Software Verification and Validation
Tools for Software Verification and Validation
 
Software quality and testing (func. & non func.)
Software quality and testing (func. & non   func.)Software quality and testing (func. & non   func.)
Software quality and testing (func. & non func.)
 
Software testing sengu
Software testing  senguSoftware testing  sengu
Software testing sengu
 
Unit 7 verification & validation
Unit 7 verification & validationUnit 7 verification & validation
Unit 7 verification & validation
 
Testing fundamentals
Testing fundamentalsTesting fundamentals
Testing fundamentals
 
Software testing
Software testingSoftware testing
Software testing
 
Software Testing and Quality Assurance unit1
Software Testing and Quality Assurance  unit1Software Testing and Quality Assurance  unit1
Software Testing and Quality Assurance unit1
 
Software testing
Software testingSoftware testing
Software testing
 
Object Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slidesObject Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slides
 
Software testing
Software testingSoftware testing
Software testing
 
Software testing
Software testingSoftware testing
Software testing
 
Introduction to software testing
Introduction to software testingIntroduction to software testing
Introduction to software testing
 
Different Types Of Testing
Different Types Of TestingDifferent Types Of Testing
Different Types Of Testing
 
Types of testing
Types of testingTypes of testing
Types of testing
 
Types of Software testing
Types of  Software testingTypes of  Software testing
Types of Software testing
 
Software Engineering- Types of Testing
Software Engineering- Types of TestingSoftware Engineering- Types of Testing
Software Engineering- Types of Testing
 
Testing
TestingTesting
Testing
 
verification and validation
verification and validationverification and validation
verification and validation
 
3.software testing
3.software testing3.software testing
3.software testing
 
Manual testing
Manual testingManual testing
Manual testing
 

Similar to Software Testing

Software testing
Software testingSoftware testing
Software testingSengu Msc
 
Software testing
Software testingSoftware testing
Software testingSengu Msc
 
System models of sdlc- v model
System models of sdlc- v modelSystem models of sdlc- v model
System models of sdlc- v modelMinal Kashyap
 
Real Time software Training in Nagercoil
Real Time software Training in NagercoilReal Time software Training in Nagercoil
Real Time software Training in Nagercoiljclick2
 
Basic Guide to Manual Testing
Basic Guide to Manual TestingBasic Guide to Manual Testing
Basic Guide to Manual TestingHiral Gosani
 
Solution Evaluation (BA Role)
Solution Evaluation (BA Role)   Solution Evaluation (BA Role)
Solution Evaluation (BA Role) Shwetha-BA
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in TestingShwetha-BA
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in TestingLakshmi-BA
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in TestingSwatiS-BA
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in TestingVeneet-BA
 
V Model in Software Testing
V Model in Software TestingV Model in Software Testing
V Model in Software TestingAbdul Raheem
 
Software Engineering-Part 1
Software Engineering-Part 1Software Engineering-Part 1
Software Engineering-Part 1Shrija Madhu
 
Testing in Software Engineering.docx
Testing in Software Engineering.docxTesting in Software Engineering.docx
Testing in Software Engineering.docx8759000398
 
Software testing career 20180929 update
Software testing career 20180929 updateSoftware testing career 20180929 update
Software testing career 20180929 updateAhmed Ahmed Mokhtar
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual TestingRajesh-QA
 

Similar to Software Testing (20)

Software testing
Software testingSoftware testing
Software testing
 
Software testing
Software testingSoftware testing
Software testing
 
Software test life cycle
Software test life cycleSoftware test life cycle
Software test life cycle
 
CTFL Module 02
CTFL Module 02CTFL Module 02
CTFL Module 02
 
SDLCTesting
SDLCTestingSDLCTesting
SDLCTesting
 
Qa analyst training
Qa analyst training Qa analyst training
Qa analyst training
 
System models of sdlc- v model
System models of sdlc- v modelSystem models of sdlc- v model
System models of sdlc- v model
 
Real Time software Training in Nagercoil
Real Time software Training in NagercoilReal Time software Training in Nagercoil
Real Time software Training in Nagercoil
 
Basic Guide to Manual Testing
Basic Guide to Manual TestingBasic Guide to Manual Testing
Basic Guide to Manual Testing
 
Solution Evaluation (BA Role)
Solution Evaluation (BA Role)   Solution Evaluation (BA Role)
Solution Evaluation (BA Role)
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in Testing
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in Testing
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in Testing
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in Testing
 
V Model in Software Testing
V Model in Software TestingV Model in Software Testing
V Model in Software Testing
 
Software Engineering-Part 1
Software Engineering-Part 1Software Engineering-Part 1
Software Engineering-Part 1
 
Testing in Software Engineering.docx
Testing in Software Engineering.docxTesting in Software Engineering.docx
Testing in Software Engineering.docx
 
Software testing career 20180929 update
Software testing career 20180929 updateSoftware testing career 20180929 update
Software testing career 20180929 update
 
Software Testing or Quality Assurance
Software Testing or Quality AssuranceSoftware Testing or Quality Assurance
Software Testing or Quality Assurance
 
Testing Concepts and Manual Testing
Testing Concepts and Manual TestingTesting Concepts and Manual Testing
Testing Concepts and Manual Testing
 

Recently uploaded

Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfPower Karaoke
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
cybersecurity notes for mca students for learning
cybersecurity notes for mca students for learningcybersecurity notes for mca students for learning
cybersecurity notes for mca students for learningVitsRangannavar
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
buds n tech IT solutions
buds n  tech IT                solutionsbuds n  tech IT                solutions
buds n tech IT solutionsmonugehlot87
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 

Recently uploaded (20)

Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdf
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
cybersecurity notes for mca students for learning
cybersecurity notes for mca students for learningcybersecurity notes for mca students for learning
cybersecurity notes for mca students for learning
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
buds n tech IT solutions
buds n  tech IT                solutionsbuds n  tech IT                solutions
buds n tech IT solutions
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 

Software Testing

  • 3. Software Development Life Cycle Software Development Life Cycle is a process of development of Software. A Frame work that describes the activities performed at each stage of a Software Development Life Cycle.
  • 4. Different Phases in SDLC REQUIREMENT FEASIBILITY STUDY DESIGN CODING TESTING MAINTENANCE
  • 5. REQUIREMENTPHASE Testing should begin in the requirements phase of the Software Development Life Cycle. Requirements will be collected from the clients. Requirements definition is the process by which the needs of the customer are translated into a clear, detailed specification of what the system must do
  • 6. FEASIBILITY STUDY Feasibility study is used to determine if the project should get the go-head. In this phase, the development team visits the customer and studies their system
  • 7. DESIGN PHASE During design phase, testers work with developers in determining what aspects of a design are testable and with what parameters those tests works. Types of design • High level design [HLD] • Low level design [LLD]
  • 8. CODINGPHASE After design we do coding. The design must be translated into machine readable form. Different High level programming languages like c, c++, java are used for coding. With respect to the type of application, the right programming language is chosen.
  • 9. TESTING Once code is generated , the software program testing begins. Testing is nothing but catching bugs or executing the program.
  • 10. MAINTENANCE A good software product should effectively respond to the changing requirement of the customer or user.
  • 11. Different Phases Project Start-up Requirement System Analysis System Design Coding & UnitTesting System Testing Acceptance testing Maintenance SRS SAS HLD, STS Programs, Documentation, Test Results, etc.Test Result ,Defect Logs Etc Test Reports Installation, UserTraining, System Analysts and Users System Analysts System Designers Programmers, Testers QA team, etc Testers, QA Team,Development team,etc Client, Testers Technical Support Team Project plan, standards, etc. Project Leader, designers
  • 12. Different SDLC Models The Waterfall Model  The Spiral Model  The V Model  The Prototype Model  The Hybrid Model
  • 13. The Water fall Model REQUIREMENT FEASIBILITY STUDY DESIGN CODING TESTING MAINTENANCE
  • 14. The Water fall Model  It is orderly and simple to understand  It represents a process that is easy to manage and measure  Each phase is completed before the next is started.  There is no scope for jumping backward or forward or performing two steps simultaneously  Not useful for complicated systems  This can often leads to waste of time and money
  • 15. The Spiral Model  Regarded as one of the best models It is used when requirements are collected in step wise Risk analysis Planning Specification and design System complexity and size grows with increasing radius, as do investment and risk
  • 16. Proto type model Requirement Feasibility Prototype Design Coding Testing Prototype coding Approval Real design Prototype testing Maintance
  • 17. Proto type model Prototype model is nothing but dummy model This model is used when customer is new to the field. Once the requirement analysis is done, a prototype is made It is then given to the customer for evaluation. The customer tests the package and gives his/her feed back
  • 19. V Model This model follows both a ‘top-down’ as well as a ‘bottom-up’ approach. In this case, both the development and testing activities go hand-in-hand. For ex: as the development team goes about its requirement analysis activities, the testing team simultaneously begins with its acceptance testing activities.
  • 20. Hybrid Model Combination of prototype and other model is known as Hybrid model Prototype model + V model and Prototype + Spiral model
  • 21. Agile Methodology The principles of Agile Methodology are: Individuals and interactions over process and tools Working software over comprehensive documentation Customer Collaboration over contract negotiation Responding to Changeover following a plan.
  • 23. Agenda Introduction to software testing Characteristics of a test engineer Advantage of software testing Why software testing is difficult Levels of testing Types of testing
  • 24. Introduction Testing means catching bugs or executing the program.
  • 25. Characteristics of Test Engineer  Characteristics of Test Engineer  Understand the application  Learn about development environment  Learn how to use application  Study the source code  Study requirement specification document  Understand the application is developed as set of modules
  • 26. Levels of Testing A Practical approach is to divide the testing process into different levels Levels of Testing Unit Testing ---------- Integration Testing ---------- System Testing ---------- Acceptance Testing --------- CODE Customer needs SRS DESIGE
  • 27. Unit Testing Unit testing is also known as functional testing. This testing is use to check each behavior of a each feature’s of an application. Unit is the smallest entity in the software In unit testing both positive testing and negative testing is done. Every unit has to be tested separately to check whether it is as per the specification
  • 28. Integration & System Testing The integration testing has to be done to check whether there is a data flow between 2 module. System testing is nothing but N to N testing. Entire system is tested as per the requirements.
  • 29. Test plan and Test case Test plan is a document which contain all the activities of testing. Test case is the smallest unit of testing. The test case contains information such as requirements testing, test steps, verification steps, outputs and test environment etc.
  • 30. TYPE OF TESTING TYPE OF TESTING
  • 31. TYPES OF TESTING BLACK BOX TESTING WHITE BOX TESTING GRAY BOX TESTING
  • 32. Black Box Testing Black box testing is also known as Skin box testing or Closed box testing. In black box testing we do testing on application by looking into the requirements and by looking a test case testing is done on application. In Black Box Testing we just focus on inputs and output of the Software system without bothering about internal knowledge of the software program.
  • 33. Types of Testing Types of Testing Functional Non-Functional Maintenance Unit testing Performance Regression Integration testing Load Smoke/Sanity Stress User Acceptance Volume Globalization Smoke Localization Accessibility
  • 34. Different Phases in SDLC Functional testing–This black box testing type is related to functional requirements of a system; it is done by software testers. Non-functional testing –This type of black box testing is not related to testing of a specific functionality , but non-functional requirement such as performance, usability. Regression testing –Regression testing is done after code fixes , upgrades or any other system maintenance to check the new code has not affected the existing code.
  • 35. TYPES OF BLACK BOX TESTING  Functional testing  Integration testing  System testing
  • 36. FUNCTIONAL TESTING Functional testing is also known as unit testing. This testing is used to check each behavior of a each feature’s of an application. Types of functional testing Positive testing Negative testing
  • 37. INTEGRATION TESTING Integration testing is done to check whether there is a data flow between each modules. In this phase of testing, individual modules are combined and tested as a group. Data transfer between the modules are tested thoroughly. Integration testing is carried out by the testers.
  • 38. SYSTEM TESTING System testing is concerned with the behavior of the system as a whole Unlike Integration testing , which focuses on data transfer amongst modules System testing checks complete end to end scenarios, as the way a customer would use the system. System testing is nothing but N to N testing. Or end to end testing. i.e. entire system is tested as per the requirements.
  • 39. White Box Testing White box testing is also known as Clear box testing or Glass box testing. Testing is done by the developers. White box testing is used for testing each and every line of the code.
  • 40. GRAY BOX TESTING  Combination of White box testing and Black box testing is known as Gray box testing.
  • 41. ACCEPTANCE TESTING Is usually done at client location by the client. Once the defects found in system testing phase is fixed. Focuses of Acceptance Testing is not to find the defects but to check whether the system meets their requirements Testing is done to ensure that user/customer to determine whether to accept the software product.
  • 42. Alpha testing In Alpha testing house virtual user environment can be created for this type of testing. Testing is done at the end of the development. Still minor deign changes may be made as a result of such testing. In Alpha testing a small set of employees of the client (in case of the bank employees )will test the application. Deletion, modification and addition of coding can be done.
  • 43. Beta Testing In Beta testing , testing is typically done by end-users or others. Final testing before releasing application for commercial purpose. In Beta testing a small set of customer in the case the bank account holders will test the application.
  • 44. Smoke /Sanity Testing If the critical defects bare present to check that we go for Smoke/Sanity Testing.  To avoid that we do Sanity/Smoke testing to check the critical functionality of the system before it is accepted for major testing.  Goal is not to find the defects but to check System health.
  • 45. USABILITY TESTING Testing the user friendliness of an application is known as usability testing. Tested by the customer. Look and feel. 90-95% is done by testing engineer now a days.
  • 46. ACCESSIBILITY TESTING Verifying a product is accessible to the people having disabilities like Blind, deaf and mentally disable is known as Accessibility testing
  • 47. RANDOM TESTING It is also known as Ad-hock or Monkey testing. In this without any test case testing is done on application randomly.
  • 48. COMPATIBILITY TESTING Testing how well software performs in a particular hardware/software/operating system/network environment and different combinations.
  • 49. COMPARISON TESTING  Compare the environment between the developing team and testing team.
  • 50. GLOBALIZATION TESTING Testing an application developed in many language is known as globalization testing. We do testing in  Internationalization testing  Localization testing
  • 51. LOCALIZATION TESTING  It will be changed according to country wise (means different country).
  • 52. Non-Functional Testing A part from functional testing, non-functional requirements like Performance, Usability, Load Testing is also important.
  • 53. PERFORMANCE TESTING Testing the stability and response time of an application by applying a load is known as performance testing. Performance testing checks the response time. The goal here is to reduce the response time to an acceptance value. Focuses on performance parameters such as Transaction response time, throughput etc
  • 54. LOAD TESTING Testing the stability and response time of an application by applying load which is less then or equal to desired number of users and then test the response time .
  • 55. STRESS TESTING Testing the stability and response time of an application by applying stress by more number of users and then test the response time.
  • 56. RECOVERY TESTING  After crashing the application we test the application to check how well it recovers from crash is called recovery testing
  • 57. Test cases Test case can be defined as sets of input parameters for which the software will be tested.
  • 58. REGRESSION TESTING  Adding the new feature may effect the old one so to over come that we go for regression testing and we do repeating testing to make the application stable….  Developermakessomechangestothesoftwaretoremovethedefe ctfound.Itislikelythatthechangesmadeinthecodemayleadtoanot herdefectthatmaynotbevisibleimmediately.
  • 59. RETESTING  After doing additional testing. We find a bugs and it is sent to the developer and after fixing the bugs, it is sent back to the test engineer and he will test the bugs whether it is fixed or not.
  • 60. Difference between Verification and Validation Verification typically involves reviews, plans, code, requirement and specifications. Verification: Are we building the product right.. Validation typically involves actual testing and takes place after verifications are completed. Validation: Are we building the right product..
  • 61. SOFTWARE QUALITY ASSURANCE Software quality assurance (SQA) involves the entire software development process. i.e. monitoring and improving the process.