際際滷

際際滷Share a Scribd company logo
Software Testing Strategies
(163015001)
(163015003)
(163015010)
(163015022)
Presented By:
Md. Mishbah
Md. Tofazzal Hossain
Shibani Bepary
Jarin Jahan Jenee
Table of Contents
 Software Testing
 Software Testing Strategy
 Strategic Approach to Testing
 Different type of Software Testing
 Top-Down Strategies
 Stubs and Drivers for Incremental Testing
 Bottom-up
 Big Bang Testing
 Conclusion
2Software Testing Strategy
Software Testing
 Software Testing is a process of evaluating the
functionality of a software application to find any
software bugs.
 It checks whether the developed software met the
specified requirements and identifies any defect in the
software in order to produce a quality product.
3Software Testing Strategy
What Testing Shows
errors
requirements conformance
performance
an indication of quality
4Software Testing Strategy
Software Testing Strategy
 Incremental testing strategies:
 Bottom-up testing
 Top-down testing
 Big bang testing
5Software Testing Strategy
Strategic Approach to Testing
 Testing begins at the component level and works
outward toward the integration of the entire computer-
based system.
 Testing and debugging are different activities.
 Debugging must be accommodated in any testing
strategy.
 Need to consider verification issues
 are we building the product right?
 Need to Consider validation issues
 are we building the right product?
6Software Testing Strategy
Factors affecting Software Testing Strategies
 Risks- Risk management is very important during testing to
figure out the risks and the risk level.
 Objectives-Testing should satisfy the requirements and needs of
stakeholders to succeed. The objective is to look for as many
defects as possible with less up-front time and effort invested.
 Skills-It is important to consider the skills of the testers since
strategies should not only be chosen but executed as well.
 Product-Some products have specified requirements.
 Business- Business considerations and strategy are often
important.
 Regulations- At some instances, one needs to satisfy the
regulators along with the stakeholders.
7Software Testing Strategy
Different Types of Software Testing
 Unit Testing
 Integration Testing
 System Testing
 Smoke Testing
 Interface Testing
 Regression Testing
 Beta/Acceptance Testing
Functional Testing
Given below is the list of some common types of Software Testing:
8Software Testing Strategy
 Performance Testing
 Security Testing
 Recovery Testing
 Load Testing
 Stress Testing
 Volume Testing
 Compatibility Testing
 Install Testing
 Reliability Testing
 Usability Testing
 Compliance Testing
 Localization Testing
Non-functional Testing
Different Types of Software Testing
9Software Testing Strategy
Incremental Testing
 incremental testing is also performed according to
two basic strategies:
 Bottom-up and
 Top-down.
 Both incremental testing strategies assume that
the software package is constructed of a hierarchy
of software modules.
10Software Testing Strategy
Top-Down Integration Testing
 In top-down testing, the first module tested is the
main module, the highest level module in the
software structure;
 The last modules to be tested are the lowest level
modules.
11Software Testing Strategy
Top-Down Integration Testing Cont.
Fig: Top-Down Integrated Testing  examples
12Software Testing Strategy
Stubs and drivers for incremental testing
 Stubs and drivers are pseudo code or dummy code used in
Integration or component testing when one or more modules are
not developed but are required to test some other module.
Stubs are used in Top-down testing approach and are
known as called programs. Stubs help simulate the
interface between lower lever modules which are not
available or developed.
Drivers are used in Bottom-up testing approach and are
known as calling programs. Drivers help simulate the
interface between top level modules which are not
developed or available.
13Software Testing Strategy
Stubs and drivers for incremental testing Cont.
Fig: Use of stubs and drivers for incremental testing  examples
14Software Testing Strategy
Bottom-Up Integration Testing
 In bottom-up testing, the order of testing is
reversed:
 The lowest level modules are tested first, with
the main module tested last.
15Software Testing Strategy
Bottom-Up Integration Testing Cont.
Fig: Bottom-Up Integration Testing  examples
16Software Testing Strategy
Big Bang Testing
 Big Bang Integration Testing is an integration testing
strategy wherein all units are linked at once, resulting
in a complete system.
 When this type of testing strategy is adopted, it is
difficult to isolate any errors found, because attention
is not paid to verifying the interfaces across individual
units.
17Software Testing Strategy
Big Bang Testing Cont.
Fig: Big Bang Testing  examples
18Software Testing Strategy
Big Bang Testing Drawbacks
 It is hard to separate modules when the bug is detected
 Ineffective for large systems
 High risk to miss some crucial issues while testing the
whole system
 Failures occur more frequently because of the
simultaneous check of numerous modules
 A single mistake can influence the results of the whole
integration testing
19Software Testing Strategy
Big Bang Testing Advantages
 Low level components are combined in clusters that
perform a specific software function.
 A driver (control program) is written to coordinate
test case input and output.
 The cluster is tested.
 Drivers are removed and clusters are combined
moving upward in the program structure.
20Software Testing Strategy
21
Conclusion
 Testing is a critically important verification
method that takes up a very large portion of a
project's resources, including schedule, budget,
staffing, and facilities.
 Unlike the many constructive activities of systems
engineering, testing is relatively unique because it
is inherently destructive.
Software Testing Strategy
Thank You

More Related Content

Software Quality Assurance

  • 1. Software Testing Strategies (163015001) (163015003) (163015010) (163015022) Presented By: Md. Mishbah Md. Tofazzal Hossain Shibani Bepary Jarin Jahan Jenee
  • 2. Table of Contents Software Testing Software Testing Strategy Strategic Approach to Testing Different type of Software Testing Top-Down Strategies Stubs and Drivers for Incremental Testing Bottom-up Big Bang Testing Conclusion 2Software Testing Strategy
  • 3. Software Testing Software Testing is a process of evaluating the functionality of a software application to find any software bugs. It checks whether the developed software met the specified requirements and identifies any defect in the software in order to produce a quality product. 3Software Testing Strategy
  • 4. What Testing Shows errors requirements conformance performance an indication of quality 4Software Testing Strategy
  • 5. Software Testing Strategy Incremental testing strategies: Bottom-up testing Top-down testing Big bang testing 5Software Testing Strategy
  • 6. Strategic Approach to Testing Testing begins at the component level and works outward toward the integration of the entire computer- based system. Testing and debugging are different activities. Debugging must be accommodated in any testing strategy. Need to consider verification issues are we building the product right? Need to Consider validation issues are we building the right product? 6Software Testing Strategy
  • 7. Factors affecting Software Testing Strategies Risks- Risk management is very important during testing to figure out the risks and the risk level. Objectives-Testing should satisfy the requirements and needs of stakeholders to succeed. The objective is to look for as many defects as possible with less up-front time and effort invested. Skills-It is important to consider the skills of the testers since strategies should not only be chosen but executed as well. Product-Some products have specified requirements. Business- Business considerations and strategy are often important. Regulations- At some instances, one needs to satisfy the regulators along with the stakeholders. 7Software Testing Strategy
  • 8. Different Types of Software Testing Unit Testing Integration Testing System Testing Smoke Testing Interface Testing Regression Testing Beta/Acceptance Testing Functional Testing Given below is the list of some common types of Software Testing: 8Software Testing Strategy
  • 9. Performance Testing Security Testing Recovery Testing Load Testing Stress Testing Volume Testing Compatibility Testing Install Testing Reliability Testing Usability Testing Compliance Testing Localization Testing Non-functional Testing Different Types of Software Testing 9Software Testing Strategy
  • 10. Incremental Testing incremental testing is also performed according to two basic strategies: Bottom-up and Top-down. Both incremental testing strategies assume that the software package is constructed of a hierarchy of software modules. 10Software Testing Strategy
  • 11. Top-Down Integration Testing In top-down testing, the first module tested is the main module, the highest level module in the software structure; The last modules to be tested are the lowest level modules. 11Software Testing Strategy
  • 12. Top-Down Integration Testing Cont. Fig: Top-Down Integrated Testing examples 12Software Testing Strategy
  • 13. Stubs and drivers for incremental testing Stubs and drivers are pseudo code or dummy code used in Integration or component testing when one or more modules are not developed but are required to test some other module. Stubs are used in Top-down testing approach and are known as called programs. Stubs help simulate the interface between lower lever modules which are not available or developed. Drivers are used in Bottom-up testing approach and are known as calling programs. Drivers help simulate the interface between top level modules which are not developed or available. 13Software Testing Strategy
  • 14. Stubs and drivers for incremental testing Cont. Fig: Use of stubs and drivers for incremental testing examples 14Software Testing Strategy
  • 15. Bottom-Up Integration Testing In bottom-up testing, the order of testing is reversed: The lowest level modules are tested first, with the main module tested last. 15Software Testing Strategy
  • 16. Bottom-Up Integration Testing Cont. Fig: Bottom-Up Integration Testing examples 16Software Testing Strategy
  • 17. Big Bang Testing Big Bang Integration Testing is an integration testing strategy wherein all units are linked at once, resulting in a complete system. When this type of testing strategy is adopted, it is difficult to isolate any errors found, because attention is not paid to verifying the interfaces across individual units. 17Software Testing Strategy
  • 18. Big Bang Testing Cont. Fig: Big Bang Testing examples 18Software Testing Strategy
  • 19. Big Bang Testing Drawbacks It is hard to separate modules when the bug is detected Ineffective for large systems High risk to miss some crucial issues while testing the whole system Failures occur more frequently because of the simultaneous check of numerous modules A single mistake can influence the results of the whole integration testing 19Software Testing Strategy
  • 20. Big Bang Testing Advantages Low level components are combined in clusters that perform a specific software function. A driver (control program) is written to coordinate test case input and output. The cluster is tested. Drivers are removed and clusters are combined moving upward in the program structure. 20Software Testing Strategy
  • 21. 21 Conclusion Testing is a critically important verification method that takes up a very large portion of a project's resources, including schedule, budget, staffing, and facilities. Unlike the many constructive activities of systems engineering, testing is relatively unique because it is inherently destructive. Software Testing Strategy