Presentation is loading. Please wait.

Presentation is loading. Please wait.

Types and Techniques of Software Testing

Similar presentations


Presentation on theme: "Types and Techniques of Software Testing"— Presentation transcript:

1 Types and Techniques of Software Testing
Presented By : Madeeha Khalid 590-FBAS/BSSE/s08

2 Table of Contents Software Testing Why Software Testing
Testing Principles History of Testing Types of Software Testing Available Tools And Techniques

3 Software Testing Software Testing is a process of evaluating a system by manual or automatic means and verify that it satisfies specified requirements or identify differences between expected and actual results.

4 The general aim of testing is to affirm the quality of software systems by systematically exercising the software in carefully controlled circumstances. ------Miller

5 Why Software Testing ???? Error Free Efficient Secured Flexible
Software Testing is important as it may cause mission failure, impact on operational performance and reliability, if not done properly !

6 Testing Principles All tests should be :
Made according to customer requirements Planned long before Testing begins Begin in-the-small and progress towards in-the-large Exhaustive Testing is not Possible

7 History of Testing Phase I. Before 1956: The Debugging-Oriented Period
– Testing was not separated from debugging Phase II. 1957~78: The Demonstration-Oriented Period – Testing to make sure that the software satisfies its specification Phase III. 1979~82: The Destruction-Oriented Period – Testing to detect implementation faults Phase IV. 1983~87: The Evaluation-Oriented Period – Testing to detect faults in requirements and design as well as in implementation Phase V. Since 1988: The Prevention-Oriented Period – Testing to prevent faults in requirements, design, and implementation

8 Types of Software Testing
About 50 types of Testing available !

9 Testing Classification
Classification by Purpose Correctness Testing Performance Testing Reliability Testing Security Testing By Life-Cycle Phase Requirements Phase Testing Design Phase Testing Program Phase Testing Evaluating Test Results Installation Phase Testing Acceptance Testing By Scope Unit Testing Component Testing Integration Testing System Testing

10 Black Box Testing Correctness Testing
Only inputs and output functionality visible Inputs are given and outputs are compared against specification No implementation Details of the code are considered Data driven Testing TARGET :To find Incorrect or missing functions , interface errors and performance errors

11 White Box Testing Correctness Testing Contrary to Black-box testing
Structure and code visible Implementation is given more importance Programming language , logic, styles are considered TARGET: To check control-flow , looping ,Data-flow. All nodes are traversed at least once

12 Unit Testing Tests the smallest individually executable code units.
Usually done by programmers. Test cases might be selected based on code, specification, intuition, etc. Tools: Test driver/harness Code coverage analyzer Automatic test case generator

13 Integration Testing Tests interactions between two or more units or components. Usually done by programmers. Emphasizes interfaces. Types : Regression Testing Incremental Integration Testing Smoke Testing

14 Stages of Testing Testing in the Large System Testing
End-to-End Testing Operations Readiness Testing Beta Testing Load Testing Stress Testing Performance Testing Reliability Testing Regression Testing

15 System Testing Test the functionality of the entire system.
Usually done by professional testers. Types: Recovery Testing Security Testing Load and Stress Testing Performance Testing Installation Testing

16 Acceptance Testing Alpha Testing Beta Testing Long Term Testing
Insures that the project satisfies the customer Requirements Usually done by both Testers and Users Types: Alpha Testing Beta Testing Long Term Testing Compatibility Testing

17 Automated Testing Software Testing Costly!
Automation Way To Cut Down Cost! Still significant Amount of human intervention needed Degree of Automation remains mainly at the automated script level.

18 And Many Other types of….

19 Available Tools And Techniques

20 Available Tools And Techniques
A lot of Testing Tools available. Some Are : Mathora NuMega’s Boundschecker,National’s Purify Ballista COTS Software Robustness Testing Harness

21 Mathora Mutation Testing tool developed at Purdue University
Can Create and Execute Test cases measures adequacy Determine Input-Output Correctness Remove Bugs

22 NuMega’s Boundchecker, National’s Purify
Runtime Checking and Debugging Aids Check and protect against Memory Leaks and Pointer problems

23 Ballista COTS Software Robustness Testing Harness
Full Scale Automated robustness Testing Tool

24 Thanks for Listening…


Download ppt "Types and Techniques of Software Testing"

Similar presentations


Ads by Google