SlideShare a Scribd company logo
Software Quality
& Testing
Presented By : Gevita Chinnaiah
What is software testing ?
Software testing is a process to investigation about
the quality.
Or
Process of finding defect i.e. variance
between Expected and actual result.
Why ? What ? How? Who?
 Why to test ?
 What to test ?
 How to test ?
 Who test ?
Why is testing necessary ?
software testing is necessary to make sure the
product or application is defect free, as per
customer specifications.
Software testing identifies fault whose removal
increases the software Quality and Increases the
software reliability.
Testing effort is directly proportional to the
complexity of the program.
Why is testing necessary ?
Software should be
Error free as per requirement
Efficient
Secured
Start Testing-when?
Testing starts right from the requirements
phase and continues till the release time .
Participations in testing
 Customer
 User
 Developer
 Tester
 Auditor
Common problems in the
software development process ?
 Poor requirements
 Unrealistic schedule
 Features
 Miscommunication
Misconception
 Anyone can test software : no particular skill
is required .
 Tester can test the quality at the end of the project
 Defects found means blaming to the developers.
What are the skill required for testing?
Strong Desired for quality and attention to details
Ability to understand the point of customer, what
He / She want
Good understanding with developer and tester.
judgment skill
“Things to break” attitude
Software Development Life Cycle
(SDLC)
The seven stages of SDLC process are
 Requirement Gathering
 Analysis.
 Design
 Development
 Testing
 Implementation
 Maintenance
There are few recognized models.....
 Water Fall Model
 Prototype Model
 Incremental Model
 RAD (Rapid Application Development) Model
 Spiral Model
 V Model
 Agile Model
SDLC Models
Software Testing Life Cycle (STLC)
Software Testing is not a just a single activity. It
consists of series of activities carried out
methodologically to help certify your software
product. These activities (stages) constitute the
Software Testing Life Cycle (STLC).
 Requirements Analysis
 Test Planning
 Test Analysis
 Test Design
 Test Construction and Verification
 Test Execution and Bug Reporting
 Final Testing and Implementation
 Post Implementation
STLC Stages
Verification and Validation
Requirement
review
Requirement
Functional
specification
CODE
REVIEW
Design Build
software
Code
Release For
use
Build
system
Functional
space review
Design
Review
Unit
testing
Integration
testing
System
testing
Acceptance
testing
Verification also known as quality assurance.
Static testing is done on this.
 Walkthrough
 Inspection
 Technical review
 Audit
Verification
Validation
Validation typically involves actual
testing and takes place after the
verifications are complete.
Validation determines the correctness
of a final build with respect to its
requirements.
Validation checks whether we are
building the right product.
Levels Of Testing
 Unit Testing
 Integration Testing
 System Testing
 User Acceptance Testing
Unit - smallest testable piece of software.
Unit testing is process of testing the smallest/ individual component of
program.
Unit test is a procedure used to validate that individual unit of source code
is working properly.
Before entering into the unit testing it should be gone through code review.
Tests the functionality of units.
Typically done by the developers and not by testers.
It is typically used to verify control flow, data flow
and memory leak problems.
Unit Testing
Functionality testing
Smoke testing
Sanity testing
Functional Testing Type
 Recovery Testing
 Compatibility Testing
 Configuration Testing
 Inter system Testing
 Installation Testing
 performance Testing
 Load Testing
 Stress Testing
 Data Volume Testing
Security testing
Non-Functionality Testing Type
Usability Testing
 Use interface (GUI)
 Manual support testing
Black Box and White box
Techniques
Black Box Testing
Black box testing is testing that ignores the internal
mechanism of a system or component and focuses
solely on the outputs generated in response to selected
inputs and execution conditions.
(also called as Behavioral testing, Functional testing, Data driven
testing, I/O driven testing)
White Box Testing
White box testing is testing that takes into account the
internal mechanism of a system or component.
(also called as Structural testing, Glass box testing,
Transparent-box and Clear box Testing )
Test Case Design methods:
 Equivalence Class partitioning method
 Boundary value analysis
 Decision Tables
 State transition testing
 Use case based testing
 Error guessing
Black box testing
White box Testing
Testing based on analysis of internal logic (design,
code, etc.).
White-box testing techniques apply primarily to
lower levels of testing (e.g., unit and component).
Targets to check control flow, looping, dataflow, all
the nodes and paths.
Mandatory to have a knowledge of code in which
the system is designed.
White Box - testing techniques
 Statement coverage
 Decision coverage
 Condition Coverage
Statement coverage
Execute all the statements at least once
Weakest form of coverage as it requires
every line of code to be checked ?
Decision coverage (Branch coverage)
Exercise all logical decision on
their true or false sides.
To test the branch we must
once
check the true condition and
once
the false condition
True
False
?
Condition Coverage
Execute each decision with all
possible outcomes at least once
It requires all cases.
Checks each of the ways
condition can be made true or
false
Condition Coverage
?
1 2
? ?
1
23
?
?
1 2 3 4
Cyclomatic Complexity
It is important to testers because it provides
an indication of the amount of testing.
Cyclomatic complexity is defined as
control flow graph G,
cyclomatic complexity V(G):
V(G)= E-N+2 Where
N is the number of nodes in G
E is the number of edges in G
V(G)=E-N+2V(G) = E - N+ 2V(G)=E -N+2
Read A
IF A < 0 THEN
Print ?A negative?
ENDIF
IF A > 0 THEN
Print ?A positive?
ENDIF
Cyclomatic complexity= 3
E-N+2
8-7+2=3
Cyclomatic Complexity
Software Quality and Testing note 1.pptx
Software Quality and Testing note 1.pptx

More Related Content

PPTX
Software Testing or Quality Assurance
Trimantra Software Solutions
 
PPTX
Software Testing
Inocentshuja Ahmad
 
PPTX
software testing technique
Rana assad ali
 
PPTX
Software testing.ppt
Komal Garg
 
PDF
softwaretesting-140721025833-phpapp02.pdf
SHAMSHADHUSAIN9
 
PPTX
Software Testing
Vishesh Jha
 
PPTX
softwaretesting-140721025833-phpapp02.pptx
SHAMSHADHUSAIN9
 
PPTX
Software testing sengu
Sengu Msc
 
Software Testing or Quality Assurance
Trimantra Software Solutions
 
Software Testing
Inocentshuja Ahmad
 
software testing technique
Rana assad ali
 
Software testing.ppt
Komal Garg
 
softwaretesting-140721025833-phpapp02.pdf
SHAMSHADHUSAIN9
 
Software Testing
Vishesh Jha
 
softwaretesting-140721025833-phpapp02.pptx
SHAMSHADHUSAIN9
 
Software testing sengu
Sengu Msc
 

Similar to Software Quality and Testing note 1.pptx (20)

PDF
S440999102
IJERA Editor
 
PPTX
Testing
Gagandeep Nanda
 
PPTX
software testing types jxnvlbnLCBNFVjnl/fknblb
jeyasrig
 
PPTX
System Testing.pptx
MohamedNowfeek1
 
PPTX
Software testing strategies
Sophia Girls' College(Autonomous), Ajmer
 
PPTX
Software testing
Golu Gupta
 
PPTX
Software Testing
Sengu Msc
 
PPTX
Software testing basic
Rohit Singh
 
PPTX
Software testing
Ravi Dasari
 
PDF
A COMPOSITION ON SOFTWARE TESTING
International Journal of Technical Research & Application
 
PPTX
Software testing
Vinothkumar SM
 
PPTX
Software Quality Assurance
Vikash Mishra
 
PPTX
white box and black box testing in software engineering
NabeelRehman21
 
PPTX
S.t.
Prashant Gupta
 
PPTX
An introduction to Software Testing and Test Management
Anuraj S.L
 
PPTX
UNIT DEVELOPMENT AND TESTING IN AUTOMOTIVE AREA
Marius Crisan
 
PPTX
https://www.slideshare.net/slideshow/system-testing-60970402/60970402Software...
IJRTETVedantaPublica
 
PPT
Software testing part
Preeti Mishra
 
PPTX
Software testing
Andhra University
 
S440999102
IJERA Editor
 
software testing types jxnvlbnLCBNFVjnl/fknblb
jeyasrig
 
System Testing.pptx
MohamedNowfeek1
 
Software testing strategies
Sophia Girls' College(Autonomous), Ajmer
 
Software testing
Golu Gupta
 
Software Testing
Sengu Msc
 
Software testing basic
Rohit Singh
 
Software testing
Ravi Dasari
 
Software testing
Vinothkumar SM
 
Software Quality Assurance
Vikash Mishra
 
white box and black box testing in software engineering
NabeelRehman21
 
An introduction to Software Testing and Test Management
Anuraj S.L
 
UNIT DEVELOPMENT AND TESTING IN AUTOMOTIVE AREA
Marius Crisan
 
https://www.slideshare.net/slideshow/system-testing-60970402/60970402Software...
IJRTETVedantaPublica
 
Software testing part
Preeti Mishra
 
Software testing
Andhra University
 
Ad

More from GevitaChinnaiah (20)

PPTX
Mobile Application and Developments.pptx
GevitaChinnaiah
 
PPTX
White Box Testing on a Python Function.pptx
GevitaChinnaiah
 
PPTX
Building a To-Do List App lecture 1.pptx
GevitaChinnaiah
 
PPTX
Introduction to JavaScript DOM and User Input.pptx
GevitaChinnaiah
 
PPT
391Lecture0909 Vision control of git.ppt
GevitaChinnaiah
 
PPTX
Introduction to Python and Basic Syntax.pptx
GevitaChinnaiah
 
PPTX
Software Programming with Python II.pptx
GevitaChinnaiah
 
PPT
a basic java programming and data type.ppt
GevitaChinnaiah
 
PPTX
Install an Operating System.pptx
GevitaChinnaiah
 
PPTX
Solve Stop Code Memory Management on Windows.pptx
GevitaChinnaiah
 
PPTX
windows memory management.pptx
GevitaChinnaiah
 
PPTX
Introduction to Database Management.pptx
GevitaChinnaiah
 
PPT
OPERATING SYSTEM CHAPTER 3.ppt
GevitaChinnaiah
 
PPTX
Lecture 3 React Native with Database.pptx
GevitaChinnaiah
 
PPTX
Database Management System (DBMS).pptx
GevitaChinnaiah
 
PPTX
Operating System chapter 1.pptx
GevitaChinnaiah
 
PPTX
Lecture 2 Styling and Layout in React Native.pptx
GevitaChinnaiah
 
PPTX
Lecture 1 Introduction to React Native.pptx
GevitaChinnaiah
 
PPTX
Understanding Applications.pptx
GevitaChinnaiah
 
PPTX
Operating System 2.pptx
GevitaChinnaiah
 
Mobile Application and Developments.pptx
GevitaChinnaiah
 
White Box Testing on a Python Function.pptx
GevitaChinnaiah
 
Building a To-Do List App lecture 1.pptx
GevitaChinnaiah
 
Introduction to JavaScript DOM and User Input.pptx
GevitaChinnaiah
 
391Lecture0909 Vision control of git.ppt
GevitaChinnaiah
 
Introduction to Python and Basic Syntax.pptx
GevitaChinnaiah
 
Software Programming with Python II.pptx
GevitaChinnaiah
 
a basic java programming and data type.ppt
GevitaChinnaiah
 
Install an Operating System.pptx
GevitaChinnaiah
 
Solve Stop Code Memory Management on Windows.pptx
GevitaChinnaiah
 
windows memory management.pptx
GevitaChinnaiah
 
Introduction to Database Management.pptx
GevitaChinnaiah
 
OPERATING SYSTEM CHAPTER 3.ppt
GevitaChinnaiah
 
Lecture 3 React Native with Database.pptx
GevitaChinnaiah
 
Database Management System (DBMS).pptx
GevitaChinnaiah
 
Operating System chapter 1.pptx
GevitaChinnaiah
 
Lecture 2 Styling and Layout in React Native.pptx
GevitaChinnaiah
 
Lecture 1 Introduction to React Native.pptx
GevitaChinnaiah
 
Understanding Applications.pptx
GevitaChinnaiah
 
Operating System 2.pptx
GevitaChinnaiah
 
Ad

Recently uploaded (20)

PPTX
Building a Strong and Ethical Digital Professional Identity
khalyaniramjan49
 
PPTX
Joy And Peace In All Circumstances.pptx
FamilyWorshipCenterD
 
PPT
strucure of protein geomics for new .ppt
RakeshKumar508211
 
PPTX
Ocean_and_Freshwater_Awareness_Presentation.pptx
Suhaira9
 
PPTX
A Power Point Presentaion of 2 test match
katarapiyush21
 
PPTX
Remote Healthcare Technology Use Cases and the Contextual Integrity of Olde...
Daniela Napoli
 
PPTX
Rotary_Fundraising_Overview_Updated_new video .pptx
allangraemeduncan
 
PPTX
Iconic Destinations in India: Explore Heritage and Beauty
dhorashankar
 
PPTX
THE school_exposure_presentation[1].pptx
sayanmondal3500
 
PPTX
Enterprise Asset Management Overview with examples
ManikantaBN1
 
PPTX
Design Tips to Help Non-Visual Visitors Stay Safe Online
Daniela Napoli
 
PDF
Advanced-Web-Design-Crafting-the-Future-Web (1).pdf
vaghelavidhiba591
 
PPTX
PHILIPPINE LITERATURE DURING SPANISH ERA
AllizaJoyMendigoria
 
PPTX
Introduction_to_Python_Presentation.pptx
vikashkumargaya5861
 
PDF
Helpful but Terrifying: Older Adults' Perspectives of AI in Remote Healthcare...
Daniela Napoli
 
PDF
Mathematics Grade 11 Term 1 Week 1_2021.pdf
MalepyaneMokgatle
 
PDF
SXSW Panel Picker: Placemaking: Culture is the new cost of living
GabrielCohen28
 
PDF
Securing Africa’s future: Technology, culture and the changing face of threat
Kayode Fayemi
 
PPTX
Public Speakingbjdsbkjfdkjdasnlkdasnlknadslnbsjknsakjscbnkjbncs.pptx
ranazunairriaz1
 
PPTX
Describing the Organization's General Environment Identifying the Most Impact...
auntorkhastagirpujan
 
Building a Strong and Ethical Digital Professional Identity
khalyaniramjan49
 
Joy And Peace In All Circumstances.pptx
FamilyWorshipCenterD
 
strucure of protein geomics for new .ppt
RakeshKumar508211
 
Ocean_and_Freshwater_Awareness_Presentation.pptx
Suhaira9
 
A Power Point Presentaion of 2 test match
katarapiyush21
 
Remote Healthcare Technology Use Cases and the Contextual Integrity of Olde...
Daniela Napoli
 
Rotary_Fundraising_Overview_Updated_new video .pptx
allangraemeduncan
 
Iconic Destinations in India: Explore Heritage and Beauty
dhorashankar
 
THE school_exposure_presentation[1].pptx
sayanmondal3500
 
Enterprise Asset Management Overview with examples
ManikantaBN1
 
Design Tips to Help Non-Visual Visitors Stay Safe Online
Daniela Napoli
 
Advanced-Web-Design-Crafting-the-Future-Web (1).pdf
vaghelavidhiba591
 
PHILIPPINE LITERATURE DURING SPANISH ERA
AllizaJoyMendigoria
 
Introduction_to_Python_Presentation.pptx
vikashkumargaya5861
 
Helpful but Terrifying: Older Adults' Perspectives of AI in Remote Healthcare...
Daniela Napoli
 
Mathematics Grade 11 Term 1 Week 1_2021.pdf
MalepyaneMokgatle
 
SXSW Panel Picker: Placemaking: Culture is the new cost of living
GabrielCohen28
 
Securing Africa’s future: Technology, culture and the changing face of threat
Kayode Fayemi
 
Public Speakingbjdsbkjfdkjdasnlkdasnlknadslnbsjknsakjscbnkjbncs.pptx
ranazunairriaz1
 
Describing the Organization's General Environment Identifying the Most Impact...
auntorkhastagirpujan
 

Software Quality and Testing note 1.pptx

  • 1. Software Quality & Testing Presented By : Gevita Chinnaiah
  • 2. What is software testing ? Software testing is a process to investigation about the quality. Or Process of finding defect i.e. variance between Expected and actual result.
  • 3. Why ? What ? How? Who?  Why to test ?  What to test ?  How to test ?  Who test ?
  • 4. Why is testing necessary ? software testing is necessary to make sure the product or application is defect free, as per customer specifications. Software testing identifies fault whose removal increases the software Quality and Increases the software reliability. Testing effort is directly proportional to the complexity of the program.
  • 5. Why is testing necessary ? Software should be Error free as per requirement Efficient Secured
  • 6. Start Testing-when? Testing starts right from the requirements phase and continues till the release time .
  • 7. Participations in testing  Customer  User  Developer  Tester  Auditor
  • 8. Common problems in the software development process ?  Poor requirements  Unrealistic schedule  Features  Miscommunication
  • 9. Misconception  Anyone can test software : no particular skill is required .  Tester can test the quality at the end of the project  Defects found means blaming to the developers.
  • 10. What are the skill required for testing? Strong Desired for quality and attention to details Ability to understand the point of customer, what He / She want Good understanding with developer and tester. judgment skill “Things to break” attitude
  • 11. Software Development Life Cycle (SDLC) The seven stages of SDLC process are  Requirement Gathering  Analysis.  Design  Development  Testing  Implementation  Maintenance
  • 12. There are few recognized models.....  Water Fall Model  Prototype Model  Incremental Model  RAD (Rapid Application Development) Model  Spiral Model  V Model  Agile Model SDLC Models
  • 13. Software Testing Life Cycle (STLC) Software Testing is not a just a single activity. It consists of series of activities carried out methodologically to help certify your software product. These activities (stages) constitute the Software Testing Life Cycle (STLC).
  • 14.  Requirements Analysis  Test Planning  Test Analysis  Test Design  Test Construction and Verification  Test Execution and Bug Reporting  Final Testing and Implementation  Post Implementation STLC Stages
  • 15. Verification and Validation Requirement review Requirement Functional specification CODE REVIEW Design Build software Code Release For use Build system Functional space review Design Review Unit testing Integration testing System testing Acceptance testing
  • 16. Verification also known as quality assurance. Static testing is done on this.  Walkthrough  Inspection  Technical review  Audit Verification
  • 17. Validation Validation typically involves actual testing and takes place after the verifications are complete. Validation determines the correctness of a final build with respect to its requirements. Validation checks whether we are building the right product.
  • 18. Levels Of Testing  Unit Testing  Integration Testing  System Testing  User Acceptance Testing
  • 19. Unit - smallest testable piece of software. Unit testing is process of testing the smallest/ individual component of program. Unit test is a procedure used to validate that individual unit of source code is working properly. Before entering into the unit testing it should be gone through code review. Tests the functionality of units. Typically done by the developers and not by testers. It is typically used to verify control flow, data flow and memory leak problems. Unit Testing
  • 20. Functionality testing Smoke testing Sanity testing Functional Testing Type
  • 21.  Recovery Testing  Compatibility Testing  Configuration Testing  Inter system Testing  Installation Testing  performance Testing  Load Testing  Stress Testing  Data Volume Testing Security testing Non-Functionality Testing Type
  • 22. Usability Testing  Use interface (GUI)  Manual support testing
  • 23. Black Box and White box Techniques Black Box Testing Black box testing is testing that ignores the internal mechanism of a system or component and focuses solely on the outputs generated in response to selected inputs and execution conditions. (also called as Behavioral testing, Functional testing, Data driven testing, I/O driven testing) White Box Testing White box testing is testing that takes into account the internal mechanism of a system or component. (also called as Structural testing, Glass box testing, Transparent-box and Clear box Testing )
  • 24. Test Case Design methods:  Equivalence Class partitioning method  Boundary value analysis  Decision Tables  State transition testing  Use case based testing  Error guessing Black box testing
  • 25. White box Testing Testing based on analysis of internal logic (design, code, etc.). White-box testing techniques apply primarily to lower levels of testing (e.g., unit and component). Targets to check control flow, looping, dataflow, all the nodes and paths. Mandatory to have a knowledge of code in which the system is designed.
  • 26. White Box - testing techniques  Statement coverage  Decision coverage  Condition Coverage
  • 27. Statement coverage Execute all the statements at least once Weakest form of coverage as it requires every line of code to be checked ?
  • 28. Decision coverage (Branch coverage) Exercise all logical decision on their true or false sides. To test the branch we must once check the true condition and once the false condition True False ?
  • 29. Condition Coverage Execute each decision with all possible outcomes at least once It requires all cases. Checks each of the ways condition can be made true or false
  • 30. Condition Coverage ? 1 2 ? ? 1 23 ? ? 1 2 3 4
  • 31. Cyclomatic Complexity It is important to testers because it provides an indication of the amount of testing. Cyclomatic complexity is defined as control flow graph G, cyclomatic complexity V(G): V(G)= E-N+2 Where N is the number of nodes in G E is the number of edges in G V(G)=E-N+2V(G) = E - N+ 2V(G)=E -N+2
  • 32. Read A IF A < 0 THEN Print ?A negative? ENDIF IF A > 0 THEN Print ?A positive? ENDIF Cyclomatic complexity= 3 E-N+2 8-7+2=3 Cyclomatic Complexity

Editor's Notes

  • #16: A step-by-step presentation by the author of the document Inspection - A type of peer review that relies on visual examination of documents to detect defects. Technical review Audit :- a. internal b. external
  • #20: 1. This testing is performed by the developers or testers. 2. Smoke testing is a subset of Regression testing. 3. Smoke testing is like General Health Check Up. Sanity testing is usually performed by testers. Sanity testing is a subset of Acceptance testing Sanity Testing is like specialized health check up
  • #21: Performance testing is a type of testing intended to determine the responsiveness, throughput, reliability, and/or scalability of a system under a given workload. Load testing is the process of putting demand on a system or device and measuring its response. Load testing is performed to determine a system's behavior under both normal and anticipated peakload conditions. Many a times, an application is hosted across locations; however, all data needs to be deployed over a central location. The process of testing the integration points for single application hosted at different locations and then ensuring correct data flow across each location is known as inter system testing.
  • #24: equivalence class represents a set of valid or invalid states for input condition. Test the boundary of the field – (2-25 ) Decision Tables: login - make condition State transition testing: - look at each and every possible way. Use case based testing:- go through the usecase document and try to use software
  • #31: Cyclomatic complexity is a source code complexity measurement that is being correlated to a number of coding errors. It is calculated by developing a Control Flow Graph of the code that measures the number of linearly-independent paths through a program module. Lower the Program's cyclomatic complexity, lower the risk to modify and easier to understand. It can be represented using the below formula:
  • #32: I f A is less thene 0 Print ?A