SlideShare una empresa de Scribd logo
1 de 19
Descargar para leer sin conexión
SW Testing

Copyright © 2012 Embedded Systems
Committee
Testing for Quality
• What is Quality?
– Functionality
– Reliability
– Usability
– Efficiency
– Maintainability
– Portability

Quality Target

Testing

System

Copyright © 2012 Embedded Systems
Committee
Source of failure
• Humanity
• Technology change
• System interaction
• Environmental conditions
– Radiation
– Magnetism
– Electronic fields
– Pollution
– Temperature

Error
Error

Bug/Defect
Bug/Defect

Failure
Failure

Copyright © 2012 Embedded Systems
Committee
Testing in Development Cycle
• Common types of V-Model uses four types of
test levels:
– Component (unit) testing
– Integration testing
– System testing
– Acceptance testing

Copyright © 2012 Embedded Systems
Committee
Risk vs. Testing

Software risk

• More testing gives more trust in component
under test.

Number of passed tests
Copyright © 2012 Embedded Systems
Committee
Cost of error detection
• Early detection saves a lot of effort

Copyright © 2012 Embedded Systems
Committee
Seven Principles of testing
1. Testing shows only the presence of defects
• But cannot prove that there is no defects

2. Exhaustive testing is impossible
• Instead of exhaustive testing, risk analysis and priorities should be used to focus
testing efforts

3. Early testing
• Early defect detection reduces the fixing cost

4. Defect clustering
• Small number of modules usually contains most of the defects discovered during
pre-release testing

5. Pesticide paradox
• SW becomes immune against test cases. Test cases needs to be revised regularly
and new ones should be written

6. Testing is context dependent
• Testing website is different than safety critical system testing

7. Absence-of-error fallacy
• Fixing defects does not help if the system built is unusable for the user
Copyright © 2012 Embedded Systems
Committee
Psychology of testing
• The mindset to be used while testing is different than
that used for developing software
• With the right mindset, developers can test their own
code
• A certain degree of independence (avoiding the author
bias) often makes the tester more effective at finding
defects and failures
• If error, defects or failures are communicated in a
constructive way, bad feelings between the testers and
analysts, designers and developers can be avoided

Copyright © 2012 Embedded Systems
Committee
Test Levels
•
•
•
•

Component (unit)
Integration
System
Acceptance

Copyright © 2012 Embedded Systems
Committee
Test Levels - Component
• Also known as unit, module, or program testing
• Verifies the functioning of SW modules, programs,
objects, classes, ..etc that are separately testable
• It may be done in isolation from the rest of the system.
Stubs, drivers and simulators may be used
• May include testing of functional or non-functional
characteristics (such as: searching for memory leaks, …)
• Test cases are derived from work products such as a
specification of the component, software design or data
model
• Component testing usually involves the programmer
who wrote the code. Defects are fixed as soon as they
are found, without formally managing these defects

Copyright © 2012 Embedded Systems
Committee
Test Levels - Integration
• There may be more than one level of integration testing:
– Component integration testing: tests the interactions between
software components and is done after the component testing
– System integration testing: tests the interaction between
different systems or between hardware and software and maybe
done after system testing

• The greater the scope of the integration, the more
difficult it becomes to isolate defects to a specific
component or system which may lead to increased risk
and additional time for troubleshooting
• Testing of specific non-functional characteristics (e.g.,
performance) may be included in integration testing as
well as functional testing
• Focus is mainly on the communication between modules
not the functionality
Copyright © 2012 Embedded Systems
Committee
Test Levels - System
• System testing is concerned with the behavior of
the whole system
• System testing may include tests based on:
– Risks
– Requirements specifications
– Business processes
– Use cases
– High level text description or system behavior model
– Interaction with the operating system
–…

• An independent system team often carries
out this type of testing
Copyright © 2012 Embedded Systems
Committee
Test Levels - Acceptance
• Acceptance testing is often the responsibility of the
customers or users of a system; other stakeholders may
be involved as well
• The goal is to establish confidence in the system.
Finding defects is not the main focus in acceptance
testing
• Typical forms of acceptance testing include:
–
–
–
–

User acceptance testing
Operational testing
Contract and regulation acceptance testing
Alpha and beta (or field) testing

Copyright © 2012 Embedded Systems
Committee
Test Types
• A test type is focused on a particular test
objective, which could be:
– A function to be performed by the software
– A non-functional quality characteristics, such as
reliability or usability
– The structure or architecture of the software or system
– Change related (confirmation testing, regression
testing)

Copyright © 2012 Embedded Systems
Committee
Test Types - Functional
• Functional testing tests “What” the system does
• Functional testing is based on functions and features described in
documents or understood by the tester
• Specification based techniques may be used to derive test
conditions and test cases
• Functional testing considers the external behavior of the software
(black-box testing)
• Security testing, is a type of functional testing related to detection
of threats from malicious outsiders
• Another type of functional testing, interoperability testing,
evaluates the capability of the software product to interact with
one or more specified components or systems

Copyright © 2012 Embedded Systems
Committee
Test Types – Non-Functional
• Non-functional testing tests “How” the system works
• Non-functional testing can be performed on all test
levels
• The term non-functional describes the tests required to
measure characteristics of system and software that can
be quantified on a varying scale, such as response
time for performance testing
• Non-functional testing considers the
external behavior of the software and
in most cases uses black-box test
design techniques

Copyright © 2012 Embedded Systems
Committee
Test Types - Structural
• Structural (white-box) testing may be performed at all
test levels
• Structural techniques are best used after specificationbased techniques in order to help measure the
thoroughness of testing through assessment of coverage
of a type of structure
• At all test levels, but especially in component testing and
component integration testing, tools can be used to
measure the code coverage of elements such as
statements or decisions

Copyright © 2012 Embedded Systems
Committee
Test Types - Changes
• After a defect is detected and fixed, the software should be retested to confirm that the original defect has been successfully
removed. This is called confirmation
• Regression testing is the repeated testing of an already tested
program, after modification, to discover any defects introduced or
uncovered as a result of the change(s)
– The extent of regression testing is based on the
risk of not finding defects in software that was
working previously
– Regression testing may be performed at all test
levels, and includes functional, non-functional
and structural testing
– Regression test suites are run many times and
evolve slowly, so regression testing is a strong
candidate for automation
Copyright © 2012 Embedded Systems
Committee
Test Types - Maintenance
• Once deployed, the software system is often in service for
years or decades. During this time, the system, its configuration
data, or its environment are often corrected
• Maintenance testing is done on an existing (released/deployed)
operational system, and is triggered by
modifications, migration, or retirement of
the software or the system
• Maintenance testing for migration
(e.g., from platform to another) should
include operational tests of the new
environment as well as of the
changed software
• In addition to testing what has been
changed, maintenance testing include
regression testing to parts of the
system that have not been changed
• Depending on the changes, maintenance
testing may be done at any or all test
levels and for any or all test types
Copyright © 2012 Embedded Systems
Committee

Más contenido relacionado

La actualidad más candente

Embedded Systems Q and A M.Sc.(IT) PART II SEM III
Embedded Systems Q and A M.Sc.(IT) PART II SEM IIIEmbedded Systems Q and A M.Sc.(IT) PART II SEM III
Embedded Systems Q and A M.Sc.(IT) PART II SEM IIINi
 
Dependable Systems -Dependability Threats (2/16)
Dependable Systems -Dependability Threats (2/16)Dependable Systems -Dependability Threats (2/16)
Dependable Systems -Dependability Threats (2/16)Peter Tröger
 
Dependable Systems -Software Dependability (15/16)
Dependable Systems -Software Dependability (15/16)Dependable Systems -Software Dependability (15/16)
Dependable Systems -Software Dependability (15/16)Peter Tröger
 
Learn software testing with tech partnerz 2
Learn software testing with tech partnerz 2Learn software testing with tech partnerz 2
Learn software testing with tech partnerz 2Techpartnerz
 
What activates a bug? A refinement of the Laprie terminology model.
What activates a bug? A refinement of the Laprie terminology model.What activates a bug? A refinement of the Laprie terminology model.
What activates a bug? A refinement of the Laprie terminology model.Peter Tröger
 
10. Software testing overview
10. Software testing overview10. Software testing overview
10. Software testing overviewghayour abbas
 
Software engineering 23 software reliability
Software engineering 23 software reliabilitySoftware engineering 23 software reliability
Software engineering 23 software reliabilityVaibhav Khanna
 
Software Reliability Engineering
Software Reliability EngineeringSoftware Reliability Engineering
Software Reliability Engineeringguest90cec6
 
Successive Software Reliability Growth Model: A Modular Approach
Successive Software Reliability Growth Model: A Modular ApproachSuccessive Software Reliability Growth Model: A Modular Approach
Successive Software Reliability Growth Model: A Modular Approachajeetmnnit
 
Software engineering critical systems
Software engineering   critical systemsSoftware engineering   critical systems
Software engineering critical systemsDr. Loganathan R
 
Ch15 software reliability
Ch15 software reliabilityCh15 software reliability
Ch15 software reliabilityAbraham Paul
 
Ch14-Software Engineering 9
Ch14-Software Engineering 9Ch14-Software Engineering 9
Ch14-Software Engineering 9Ian Sommerville
 
OpenSubmit - How to grade 1200 code submissions
OpenSubmit - How to grade 1200 code submissionsOpenSubmit - How to grade 1200 code submissions
OpenSubmit - How to grade 1200 code submissionsPeter Tröger
 

La actualidad más candente (20)

Embedded Systems Q and A M.Sc.(IT) PART II SEM III
Embedded Systems Q and A M.Sc.(IT) PART II SEM IIIEmbedded Systems Q and A M.Sc.(IT) PART II SEM III
Embedded Systems Q and A M.Sc.(IT) PART II SEM III
 
Dependable Systems -Dependability Threats (2/16)
Dependable Systems -Dependability Threats (2/16)Dependable Systems -Dependability Threats (2/16)
Dependable Systems -Dependability Threats (2/16)
 
Dependable Systems -Software Dependability (15/16)
Dependable Systems -Software Dependability (15/16)Dependable Systems -Software Dependability (15/16)
Dependable Systems -Software Dependability (15/16)
 
Learn software testing with tech partnerz 2
Learn software testing with tech partnerz 2Learn software testing with tech partnerz 2
Learn software testing with tech partnerz 2
 
Fundamental of testing
Fundamental of testingFundamental of testing
Fundamental of testing
 
What activates a bug? A refinement of the Laprie terminology model.
What activates a bug? A refinement of the Laprie terminology model.What activates a bug? A refinement of the Laprie terminology model.
What activates a bug? A refinement of the Laprie terminology model.
 
Software reliability
Software reliabilitySoftware reliability
Software reliability
 
10. Software testing overview
10. Software testing overview10. Software testing overview
10. Software testing overview
 
Quality & Reliability in Software Engineering
Quality & Reliability in Software EngineeringQuality & Reliability in Software Engineering
Quality & Reliability in Software Engineering
 
Software engineering 23 software reliability
Software engineering 23 software reliabilitySoftware engineering 23 software reliability
Software engineering 23 software reliability
 
Software Reliability Engineering
Software Reliability EngineeringSoftware Reliability Engineering
Software Reliability Engineering
 
Successive Software Reliability Growth Model: A Modular Approach
Successive Software Reliability Growth Model: A Modular ApproachSuccessive Software Reliability Growth Model: A Modular Approach
Successive Software Reliability Growth Model: A Modular Approach
 
SRE Tools
SRE ToolsSRE Tools
SRE Tools
 
Software engineering critical systems
Software engineering   critical systemsSoftware engineering   critical systems
Software engineering critical systems
 
Ch15 software reliability
Ch15 software reliabilityCh15 software reliability
Ch15 software reliability
 
Ch14-Software Engineering 9
Ch14-Software Engineering 9Ch14-Software Engineering 9
Ch14-Software Engineering 9
 
OpenSubmit - How to grade 1200 code submissions
OpenSubmit - How to grade 1200 code submissionsOpenSubmit - How to grade 1200 code submissions
OpenSubmit - How to grade 1200 code submissions
 
12 software maintenance
12 software maintenance12 software maintenance
12 software maintenance
 
Fault tolerance
Fault toleranceFault tolerance
Fault tolerance
 
Bangalore march07
Bangalore march07Bangalore march07
Bangalore march07
 

Destacado

First Steps Towards An Online User Experience Testing Community Presentation
First Steps Towards An Online User Experience Testing Community PresentationFirst Steps Towards An Online User Experience Testing Community Presentation
First Steps Towards An Online User Experience Testing Community PresentationWeb 2.0 Expo
 
Testing fundamental stqa
Testing fundamental stqaTesting fundamental stqa
Testing fundamental stqaSwati Patel
 
Intro to Usability (UX) Testing
Intro to Usability (UX) TestingIntro to Usability (UX) Testing
Intro to Usability (UX) TestingJake Truemper
 
UX Design Testing Battle School - ISL
UX Design Testing Battle School - ISLUX Design Testing Battle School - ISL
UX Design Testing Battle School - ISLEric Shutt
 
Sw Software QA Testing
Sw Software QA TestingSw Software QA Testing
Sw Software QA Testingjonathan077070
 
Fractales (1)
Fractales (1)Fractales (1)
Fractales (1)cheliitaa
 
Regulamento concursoleituraconcelho ourem_aeco
Regulamento concursoleituraconcelho ourem_aecoRegulamento concursoleituraconcelho ourem_aeco
Regulamento concursoleituraconcelho ourem_aecobibliotecaoureana
 
Hindavi Technologies Profile
Hindavi Technologies ProfileHindavi Technologies Profile
Hindavi Technologies Profileonebhushan
 
Unlocking funding opportunities final
Unlocking funding opportunities finalUnlocking funding opportunities final
Unlocking funding opportunities finalsaqib_bsettlement
 
อังกฤษ
อังกฤษอังกฤษ
อังกฤษLynnie1177
 
ประวัติส่วนตัว
ประวัติส่วนตัวประวัติส่วนตัว
ประวัติส่วนตัวLynnie1177
 
Engaging Activities
Engaging ActivitiesEngaging Activities
Engaging Activitiesclubmedau
 

Destacado (20)

First Steps Towards An Online User Experience Testing Community Presentation
First Steps Towards An Online User Experience Testing Community PresentationFirst Steps Towards An Online User Experience Testing Community Presentation
First Steps Towards An Online User Experience Testing Community Presentation
 
Testing fundamental stqa
Testing fundamental stqaTesting fundamental stqa
Testing fundamental stqa
 
Intro to Usability (UX) Testing
Intro to Usability (UX) TestingIntro to Usability (UX) Testing
Intro to Usability (UX) Testing
 
UX Design Testing Battle School - ISL
UX Design Testing Battle School - ISLUX Design Testing Battle School - ISL
UX Design Testing Battle School - ISL
 
Sw Software QA Testing
Sw Software QA TestingSw Software QA Testing
Sw Software QA Testing
 
Sw testing and qa basics
Sw testing and qa basicsSw testing and qa basics
Sw testing and qa basics
 
Fractales (1)
Fractales (1)Fractales (1)
Fractales (1)
 
Regulamento concursoleituraconcelho ourem_aeco
Regulamento concursoleituraconcelho ourem_aecoRegulamento concursoleituraconcelho ourem_aeco
Regulamento concursoleituraconcelho ourem_aeco
 
Hindavi Technologies Profile
Hindavi Technologies ProfileHindavi Technologies Profile
Hindavi Technologies Profile
 
Unlocking funding opportunities final
Unlocking funding opportunities finalUnlocking funding opportunities final
Unlocking funding opportunities final
 
คณิต
คณิตคณิต
คณิต
 
อังกฤษ
อังกฤษอังกฤษ
อังกฤษ
 
Pr i ncess!!!
Pr i ncess!!!Pr i ncess!!!
Pr i ncess!!!
 
Office 2010 migration
Office 2010 migrationOffice 2010 migration
Office 2010 migration
 
Atlas corporate profile
Atlas corporate profileAtlas corporate profile
Atlas corporate profile
 
Mô tả dự án
Mô tả dự ánMô tả dự án
Mô tả dự án
 
Pdhpe slideshow
Pdhpe slideshowPdhpe slideshow
Pdhpe slideshow
 
ประวัติส่วนตัว
ประวัติส่วนตัวประวัติส่วนตัว
ประวัติส่วนตัว
 
Engaging Activities
Engaging ActivitiesEngaging Activities
Engaging Activities
 
Matlab workshop
Matlab workshopMatlab workshop
Matlab workshop
 

Similar a Sw testing

Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality AssuranceSaqib Raza
 
testing strategies and tactics
 testing strategies and tactics testing strategies and tactics
testing strategies and tacticsPreeti Mishra
 
Fundamentals of software part 1
Fundamentals of software part 1Fundamentals of software part 1
Fundamentals of software part 1Siddharth Sharma
 
SENG202-v-and-v-modeling_121810.pptx
SENG202-v-and-v-modeling_121810.pptxSENG202-v-and-v-modeling_121810.pptx
SENG202-v-and-v-modeling_121810.pptxMinsasWorld
 
Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...
Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...
Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...ShudipPal
 
Objectorientedtesting 160320132146
Objectorientedtesting 160320132146Objectorientedtesting 160320132146
Objectorientedtesting 160320132146vidhyyav
 
Software testing-and-analysis
Software testing-and-analysisSoftware testing-and-analysis
Software testing-and-analysisWBUTTUTORIALS
 
Object oriented testing
Object oriented testingObject oriented testing
Object oriented testingHaris Jamil
 
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
 
Software Testing Ni Boni
Software Testing Ni BoniSoftware Testing Ni Boni
Software Testing Ni BoniJay Ar
 
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 Engineering (Testing Overview)
Software Engineering (Testing Overview)Software Engineering (Testing Overview)
Software Engineering (Testing Overview)ShudipPal
 
Software Testing Strategies
Software Testing StrategiesSoftware Testing Strategies
Software Testing StrategiesAlpana Bhaskar
 
Lect-6-Generic testing types.pptx
Lect-6-Generic testing types.pptxLect-6-Generic testing types.pptx
Lect-6-Generic testing types.pptxabdullahsaddique2
 
Module V - Software Testing Strategies.pdf
Module V - Software Testing Strategies.pdfModule V - Software Testing Strategies.pdf
Module V - Software Testing Strategies.pdfadhithanr
 

Similar a Sw testing (20)

Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
testing strategies and tactics
 testing strategies and tactics testing strategies and tactics
testing strategies and tactics
 
Fundamentals of software part 1
Fundamentals of software part 1Fundamentals of software part 1
Fundamentals of software part 1
 
SENG202-v-and-v-modeling_121810.pptx
SENG202-v-and-v-modeling_121810.pptxSENG202-v-and-v-modeling_121810.pptx
SENG202-v-and-v-modeling_121810.pptx
 
Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...
Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...
Software Engineering (Software Quality Assurance & Testing: Supplementary Mat...
 
Objectorientedtesting 160320132146
Objectorientedtesting 160320132146Objectorientedtesting 160320132146
Objectorientedtesting 160320132146
 
Software testing-and-analysis
Software testing-and-analysisSoftware testing-and-analysis
Software testing-and-analysis
 
Object oriented testing
Object oriented testingObject oriented testing
Object oriented testing
 
Solution Evaluation (BA Role)
Solution Evaluation (BA Role)   Solution Evaluation (BA Role)
Solution Evaluation (BA Role)
 
6. oose testing
6. oose testing6. oose testing
6. oose 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
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in Testing
 
Software Testing Ni Boni
Software Testing Ni BoniSoftware Testing Ni Boni
Software Testing Ni Boni
 
Object Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slidesObject Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slides
 
Software Engineering (Testing Overview)
Software Engineering (Testing Overview)Software Engineering (Testing Overview)
Software Engineering (Testing Overview)
 
Software Testing Strategies
Software Testing StrategiesSoftware Testing Strategies
Software Testing Strategies
 
Lect-6-Generic testing types.pptx
Lect-6-Generic testing types.pptxLect-6-Generic testing types.pptx
Lect-6-Generic testing types.pptx
 
Module V - Software Testing Strategies.pdf
Module V - Software Testing Strategies.pdfModule V - Software Testing Strategies.pdf
Module V - Software Testing Strategies.pdf
 

Más de محمدعبد الحى (15)

Iso26262 component reuse_webinar
Iso26262 component reuse_webinarIso26262 component reuse_webinar
Iso26262 component reuse_webinar
 
Interfacing using ِAtmega16/32
Interfacing using ِAtmega16/32 Interfacing using ِAtmega16/32
Interfacing using ِAtmega16/32
 
Can bus
Can busCan bus
Can bus
 
Lin bus
Lin busLin bus
Lin bus
 
Embedded Systems in Automotive
Embedded Systems in Automotive Embedded Systems in Automotive
Embedded Systems in Automotive
 
MATLAB Programming
MATLAB Programming MATLAB Programming
MATLAB Programming
 
CPU Architecture
CPU ArchitectureCPU Architecture
CPU Architecture
 
8 bit microcontroller
8 bit microcontroller8 bit microcontroller
8 bit microcontroller
 
Timers
TimersTimers
Timers
 
Interrupts
InterruptsInterrupts
Interrupts
 
Uart
UartUart
Uart
 
Rtos
RtosRtos
Rtos
 
Dio
DioDio
Dio
 
Micro controller
Micro controllerMicro controller
Micro controller
 
Day1
Day1Day1
Day1
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 

Último (20)

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 

Sw testing

  • 1. SW Testing Copyright © 2012 Embedded Systems Committee
  • 2. Testing for Quality • What is Quality? – Functionality – Reliability – Usability – Efficiency – Maintainability – Portability Quality Target Testing System Copyright © 2012 Embedded Systems Committee
  • 3. Source of failure • Humanity • Technology change • System interaction • Environmental conditions – Radiation – Magnetism – Electronic fields – Pollution – Temperature Error Error Bug/Defect Bug/Defect Failure Failure Copyright © 2012 Embedded Systems Committee
  • 4. Testing in Development Cycle • Common types of V-Model uses four types of test levels: – Component (unit) testing – Integration testing – System testing – Acceptance testing Copyright © 2012 Embedded Systems Committee
  • 5. Risk vs. Testing Software risk • More testing gives more trust in component under test. Number of passed tests Copyright © 2012 Embedded Systems Committee
  • 6. Cost of error detection • Early detection saves a lot of effort Copyright © 2012 Embedded Systems Committee
  • 7. Seven Principles of testing 1. Testing shows only the presence of defects • But cannot prove that there is no defects 2. Exhaustive testing is impossible • Instead of exhaustive testing, risk analysis and priorities should be used to focus testing efforts 3. Early testing • Early defect detection reduces the fixing cost 4. Defect clustering • Small number of modules usually contains most of the defects discovered during pre-release testing 5. Pesticide paradox • SW becomes immune against test cases. Test cases needs to be revised regularly and new ones should be written 6. Testing is context dependent • Testing website is different than safety critical system testing 7. Absence-of-error fallacy • Fixing defects does not help if the system built is unusable for the user Copyright © 2012 Embedded Systems Committee
  • 8. Psychology of testing • The mindset to be used while testing is different than that used for developing software • With the right mindset, developers can test their own code • A certain degree of independence (avoiding the author bias) often makes the tester more effective at finding defects and failures • If error, defects or failures are communicated in a constructive way, bad feelings between the testers and analysts, designers and developers can be avoided Copyright © 2012 Embedded Systems Committee
  • 10. Test Levels - Component • Also known as unit, module, or program testing • Verifies the functioning of SW modules, programs, objects, classes, ..etc that are separately testable • It may be done in isolation from the rest of the system. Stubs, drivers and simulators may be used • May include testing of functional or non-functional characteristics (such as: searching for memory leaks, …) • Test cases are derived from work products such as a specification of the component, software design or data model • Component testing usually involves the programmer who wrote the code. Defects are fixed as soon as they are found, without formally managing these defects Copyright © 2012 Embedded Systems Committee
  • 11. Test Levels - Integration • There may be more than one level of integration testing: – Component integration testing: tests the interactions between software components and is done after the component testing – System integration testing: tests the interaction between different systems or between hardware and software and maybe done after system testing • The greater the scope of the integration, the more difficult it becomes to isolate defects to a specific component or system which may lead to increased risk and additional time for troubleshooting • Testing of specific non-functional characteristics (e.g., performance) may be included in integration testing as well as functional testing • Focus is mainly on the communication between modules not the functionality Copyright © 2012 Embedded Systems Committee
  • 12. Test Levels - System • System testing is concerned with the behavior of the whole system • System testing may include tests based on: – Risks – Requirements specifications – Business processes – Use cases – High level text description or system behavior model – Interaction with the operating system –… • An independent system team often carries out this type of testing Copyright © 2012 Embedded Systems Committee
  • 13. Test Levels - Acceptance • Acceptance testing is often the responsibility of the customers or users of a system; other stakeholders may be involved as well • The goal is to establish confidence in the system. Finding defects is not the main focus in acceptance testing • Typical forms of acceptance testing include: – – – – User acceptance testing Operational testing Contract and regulation acceptance testing Alpha and beta (or field) testing Copyright © 2012 Embedded Systems Committee
  • 14. Test Types • A test type is focused on a particular test objective, which could be: – A function to be performed by the software – A non-functional quality characteristics, such as reliability or usability – The structure or architecture of the software or system – Change related (confirmation testing, regression testing) Copyright © 2012 Embedded Systems Committee
  • 15. Test Types - Functional • Functional testing tests “What” the system does • Functional testing is based on functions and features described in documents or understood by the tester • Specification based techniques may be used to derive test conditions and test cases • Functional testing considers the external behavior of the software (black-box testing) • Security testing, is a type of functional testing related to detection of threats from malicious outsiders • Another type of functional testing, interoperability testing, evaluates the capability of the software product to interact with one or more specified components or systems Copyright © 2012 Embedded Systems Committee
  • 16. Test Types – Non-Functional • Non-functional testing tests “How” the system works • Non-functional testing can be performed on all test levels • The term non-functional describes the tests required to measure characteristics of system and software that can be quantified on a varying scale, such as response time for performance testing • Non-functional testing considers the external behavior of the software and in most cases uses black-box test design techniques Copyright © 2012 Embedded Systems Committee
  • 17. Test Types - Structural • Structural (white-box) testing may be performed at all test levels • Structural techniques are best used after specificationbased techniques in order to help measure the thoroughness of testing through assessment of coverage of a type of structure • At all test levels, but especially in component testing and component integration testing, tools can be used to measure the code coverage of elements such as statements or decisions Copyright © 2012 Embedded Systems Committee
  • 18. Test Types - Changes • After a defect is detected and fixed, the software should be retested to confirm that the original defect has been successfully removed. This is called confirmation • Regression testing is the repeated testing of an already tested program, after modification, to discover any defects introduced or uncovered as a result of the change(s) – The extent of regression testing is based on the risk of not finding defects in software that was working previously – Regression testing may be performed at all test levels, and includes functional, non-functional and structural testing – Regression test suites are run many times and evolve slowly, so regression testing is a strong candidate for automation Copyright © 2012 Embedded Systems Committee
  • 19. Test Types - Maintenance • Once deployed, the software system is often in service for years or decades. During this time, the system, its configuration data, or its environment are often corrected • Maintenance testing is done on an existing (released/deployed) operational system, and is triggered by modifications, migration, or retirement of the software or the system • Maintenance testing for migration (e.g., from platform to another) should include operational tests of the new environment as well as of the changed software • In addition to testing what has been changed, maintenance testing include regression testing to parts of the system that have not been changed • Depending on the changes, maintenance testing may be done at any or all test levels and for any or all test types Copyright © 2012 Embedded Systems Committee