Types and Techniques of Software Testing

Slides:



Advertisements
Similar presentations
Object Oriented Analysis And Design-IT0207 iiI Semester
Advertisements

Testing Relational Database
Test Yaodong Bi.
Test process essentials Riitta Viitamäki,
SOFTWARE TESTING. Software Testing Principles Types of software tests Test planning Test Development Test Execution and Reporting Test tools and Methods.
Presentation by Prabhjot Singh
Testing and Quality Assurance
SOFTWARE TESTING. INTRODUCTION  Software Testing is the process of executing a program or system with the intent of finding errors.  It involves any.
Abirami Poonkundran 2/22/10.  Goal  Introduction  Testing Methods  Testing Scope  My Focus  Current Progress  Explanation of Tools  Things to.
Software Testing. Overview Definition of Software Testing Problems with Testing Benefits of Testing Effective Methods for Testing.
Outline Types of errors Component Testing Testing Strategy
Introduction to Software Testing
Issues on Software Testing for Safety-Critical Real-Time Automation Systems Shahdat Hossain Troy Mockenhaupt.
BY RAJESWARI S SOFTWARE TESTING. INTRODUCTION Software testing is the process of testing the software product. Effective software testing will contribute.
System/Software Testing
Extreme Programming Software Development Written by Sanjay Kumar.
Software Quality Assurance Lecture #8 By: Faraz Ahmed.
1 Software Testing (Part-II) Lecture Software Testing Software Testing is the process of finding the bugs in a software. It helps in Verifying and.
TESTING.
SOFTWARE TESTING STRATEGIES CIS518001VA : ADVANCED SOFTWARE ENGINEERING TERM PAPER.
Objectives Understand the basic concepts and definitions relating to testing, like error, fault, failure, test case, test suite, test harness. Explore.
CPIS 357 Software Quality & Testing
CS4311 Spring 2011 Verification & Validation Dr. Guoqiang Hu Department of Computer Science UTEP.
CMSC 345 Fall 2000 Unit Testing. The testing process.
Software testing basic. Main contents  Why is testing necessary?  What is testing?  Test Design techniques  Test level  Test type  How to write.
Software Testing Testing principles. Testing Testing involves operation of a system or application under controlled conditions & evaluating the results.
Principles of Information Systems, Sixth Edition Systems Design, Implementation, Maintenance, and Review Chapter 13.
Testing Basics of Testing Presented by: Vijay.C.G – Glister Tech.
Testing Workflow In the Unified Process and Agile/Scrum processes.
Testing -- Part II. Testing The role of testing is to: w Locate errors that can then be fixed to produce a more reliable product w Design tests that systematically.
Dr. Tom WayCSC Testing and Test-Driven Development CSC 4700 Software Engineering Based on Sommerville slides.
Software Construction Lecture 18 Software Testing.
1 SOFTWARE TESTING Presented By Abhilash.S  What is Software Testing?  Fundamentals of software Testing Error/Mistake? Defect/Bug/Fault? Failure? 2.
TESTING LEVELS Unit Testing Integration Testing System Testing Acceptance Testing.
What is Testing? Testing is the process of exercising or evaluating a system or system component by manual or automated means to verify that it satisfies.
1 Ch. 1: Software Development (Read) 5 Phases of Software Life Cycle: Problem Analysis and Specification Design Implementation (Coding) Testing, Execution.
Software Testing Process By: M. Muzaffar Hameed.
Software Development Problem Analysis and Specification Design Implementation (Coding) Testing, Execution and Debugging Maintenance.
Software Engineering 2004 Jyrki Nummenmaa 1 BACKGROUND There is no way to generally test programs exhaustively (that is, going through all execution.
MANUAL TESTING KS SESSION PRESENTED BY 26/11/015 VISHAL KUMAR.
Principles of Information Systems, Sixth Edition 1 Systems Design, Implementation, Maintenance, and Review Chapter 13.
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
Software Engineering Saeed Akhtar The University of Lahore.
Software Testing and Quality Assurance 1. What is the objectives of Software Testing?
Integration testing Integrate two or more module.i.e. communicate between the modules. Follow a white box testing (Testing the code)
1 Software Testing Strategies: Approaches, Issues, Testing Tools.
Software Testing Mehwish Shafiq. Testing Testing is carried out to validate and verify the piece developed in order to give user a confidence to use reliable.
Software Quality Assurance and Testing Fazal Rehman Shamil.
 Software Testing Software Testing  Characteristics of Testable Software Characteristics of Testable Software  A Testing Life Cycle A Testing Life.
HNDIT23082 Lecture 09:Software Testing. Validations and Verification Validation and verification ( V & V ) is the name given to the checking and analysis.
1 Phase Testing. Janice Regan, For each group of units Overview of Implementation phase Create Class Skeletons Define Implementation Plan (+ determine.
SOFTWARE TESTING SOFTWARE TESTING Presented By, C.Jackulin Sugirtha-10mx15 R.Jeyaramar-10mx17K.Kanagalakshmi-10mx20J.A.Linda-10mx25P.B.Vahedha-10mx53.
Lecturer: Eng. Mohamed Adam Isak PH.D Researcher in CS M.Sc. and B.Sc. of Information Technology Engineering, Lecturer in University of Somalia and Mogadishu.
SOFTWARE TESTING. SOFTWARE Software is not the collection of programs but also all associated documentation and configuration data which is need to make.
Introduction to Software Testing Maili Markvardt.
Software engineering - 2 Section 8. QUIZ Show how it is possible to determine the height of a tall building with the aid of a barometer.
ANOOP GANGWAR 5 TH SEM SOFTWARE TESTING MASTER OF COMPUTER APPLICATION-V Sem.
Software Testing By Souvik Roy. What is Software Testing? Executing software in a simulated or real environment, using inputs selected somehow.
Chapter 9 Testing the System 9.1 Principles of System Testing Focus A: The objective of unit and integration ensure the code implemented the design.
Software Testing Strategies for building test group
Software Testing.
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
Software Engineering (CSI 321)
SOFTWARE TESTING OVERVIEW
Software engineering – 1
Introduction to Software Testing
Lecture 09:Software Testing
Test Case Test case Describes an input Description and an expected output Description. Test case ID Section 1: Before execution Section 2: After execution.
Chapter 11: Integration- and System Testing
Software Testing Strategies
Presentation transcript:

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

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

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.

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

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 !

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

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

Types of Software Testing About 50 types of Testing available !

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

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

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

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

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

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

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

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

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.

And Many Other types of….

Available Tools And Techniques

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

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

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

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

Thanks for Listening…