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.

Slides:



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

Software Testing. Quality is Hard to Pin Down Concise, clear definition is elusive Not easily quantifiable Many things to many people You'll know it when.
Test Design and Documentation. Test Design Test design is to ensure that all requirements are met through a series of test procedures, increasing the.
(c) Dr. Wolfgang J. Schneider GENERAL TESTING PRINCIPLES Dr. Wolfgang J. Schneider 2003 – 2006.
SOFTWARE TESTING. Software Testing Principles Types of software tests Test planning Test Development Test Execution and Reporting Test tools and Methods.
Annoucements  Next labs 9 and 10 are paired for everyone. So don’t miss the lab.  There is a review session for the quiz on Monday, November 4, at 8:00.
Software Quality Assurance Inspection by Ross Simmerman Software developers follow a method of software quality assurance and try to eliminate bugs prior.
Testing: Who 3, What 4, Why 1, When 2, How 5 Lian Yu, Peking U. Michal Young, U. Oregon.
Documentation Testing
Software Testing. Overview Definition of Software Testing Problems with Testing Benefits of Testing Effective Methods for Testing.
Software Testing. Testing Levels (McConnel) Unit Testing Single programmer involved in writing tested code Component Testing Multiple programmers involved.
1 Software Testing and Quality Assurance Lecture 15 - Planning for Testing (Chapter 3, A Practical Guide to Testing Object- Oriented Software)
Illinois Institute of Technology
16/27/2015 3:38 AM6/27/2015 3:38 AM6/27/2015 3:38 AMTesting and Debugging Testing The process of verifying the software performs to the specifications.
Software Testing. “Software and Cathedrals are much the same: First we build them, then we pray!!!” -Sam Redwine, Jr.
Implementation. We we came from… Planning Analysis Design Implementation Identify Problem/Value. Feasibility Analysis. Project Management. Understand.
 What is Software Testing  Terminologies used in Software testing  Types of Testing  What is Manual Testing  Types of Manual Testing  Process that.
Types and Techniques of Software Testing
1 Software Testing Techniques CIS 375 Bruce R. Maxim UM-Dearborn.
What Exactly are the Techniques of Software Verification and Validation A Storehouse of Vast Knowledge on Software Testing.
Terms: Test (Case) vs. Test Suite
Extreme Programming Software Development Written by Sanjay Kumar.
Testing. Definition From the dictionary- the means by which the presence, quality, or genuineness of anything is determined; a means of trial. For software.
Software Testing. Definition To test a program is to try to make it fail.
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.
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
1. Topics to be discussed Introduction Objectives Testing Life Cycle Verification Vs Validation Testing Methodology Testing Levels 2.
DKT311 Software Engineering Dr. Rozmie Razif bin Othman.
SOFTWARE TESTING STRATEGIES CIS518001VA : ADVANCED SOFTWARE ENGINEERING TERM PAPER.
CPIS 357 Software Quality & Testing
Introduction Telerik Software Academy Software Quality Assurance.
CMSC 345 Fall 2000 Unit Testing. The testing process.
INT-Evry (Masters IT– Soft Eng)IntegrationTesting.1 (OO) Integration Testing What: Integration testing is a phase of software testing in which.
Moving into Implementation SYSTEMS ANALYSIS AND DESIGN, 6 TH EDITION DENNIS, WIXOM, AND ROTH © 2015 JOHN WILEY & SONS. ALL RIGHTS RESERVED.Roberta M. Roth.
Slide 1 Construction (Testing) Chapter 15 Alan Dennis, Barbara Wixom, and David Tegarden John Wiley & Sons, Inc. Slides by Fred Niederman Edited by Solomon.
Basic of Software Testing Presented by The Smartpath Information System An ISO 9001:2008 Certified Organization
From Quality Control to Quality Assurance…and Beyond Alan Page Microsoft.
Software Construction Lecture 18 Software Testing.
Sylnovie Merchant, Ph.D. MIS 161 Spring 2005 MIS 161 Systems Development Life Cycle II Lecture 5: Testing User Documentation.
TESTING LEVELS Unit Testing Integration Testing System Testing Acceptance Testing.
Topics Covered: Software testing Software testing Levels of testing Levels of testing  Unit testing Unit testing Unit testing  Integration testing Integration.
Controls design Controls are “the plan of organization and all the methods and measures to safeguard its assets, check the accuracy and reliability of.
Software Testing Process By: M. Muzaffar Hameed.
Testing, Testing & Testing - By M.D.ACHARYA QA doesn't make software but makes it better.
Software Engineering 2004 Jyrki Nummenmaa 1 BACKGROUND There is no way to generally test programs exhaustively (that is, going through all execution.
Chapter 1: Fundamental of Testing Systems Testing & Evaluation (MNN1063)
Software Engineering Saeed Akhtar The University of Lahore.
SOFTWARE TESTING. Introduction Software Testing is the process of executing a program or system with the intent of finding errors. It involves any activity.
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.
CSC 395 – Software Engineering Lecture 27: White-Box Testing.
SOFTWARE TESTING SOFTWARE TESTING Presented By, C.Jackulin Sugirtha-10mx15 R.Jeyaramar-10mx17K.Kanagalakshmi-10mx20J.A.Linda-10mx25P.B.Vahedha-10mx53.
Introduction to Software Testing Maili Markvardt.
SOFTWARE TESTING LECTURE 9. OBSERVATIONS ABOUT TESTING “ Testing is the process of executing a program with the intention of finding errors. ” – Myers.
Verification vs. Validation Verification: "Are we building the product right?" The software should conform to its specification.The software should conform.
Testing Integral part of the software development process.
Items to consider before automating an application
Software Testing.
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
Unit Testing.
Software engineering Section 2.
Software Engineering (CSI 321)
Software engineering – 1
CS-4349 Software Testing & Implementation
CS240: Advanced Programming Concepts
Software Verification and Validation
Software Verification and Validation
Software Verification and Validation
Software Testing.
Presentation transcript:

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.

Niles Bohr

مش دايما الحل المعقد هو الحل الوحيد اللى صح

What’s software testing software testing is an activity to check whether the actual results match the expected results and to ensure that the software system is defect free.

Why software testing is important Testing is important because software bugs could be expensive or even dangerous.

How to do testing ?? Imagine that we want to test moving a file from folder A to folder B. How should we test this operation to ensure that this operations works correctly ? – Trying to move the file when it is open – You do not have the security rights to paste the file in Folder B – Folder B is on a shared drive and storage capacity is full. – Folder B already has a file with the same name

Exhaustive testing Test the entire possible combinations EXHAUSTIVE testing is not possible.

80-20 rule “80 percent from the possible defects will come from 20 percent from the overall code” Defect Clustering

Pesticide Paradox If the same tests are repeated over and over again, eventually the same test cases will no longer find new bugs To overcome this, the test cases need to be regularly reviewed & revised, adding new & different test cases to help find more defects.

Important note Software Testing reduces the probability of undiscovered defects remaining in the software but even if no defects are found, it is not a proof of correctness.

Early testing Finding and fixing defects does not help if the system build is unusable and does not fulfill the users needs & requirements. Early Testing - Testing should start as early as possible in the Software Development Life Cycle

Early testing Also, the costs of fixing a defect increases across the development life cycle. The earlier in life cycle a defect is detected, the cheaper it is to fix it

V Model

Software testing lifecycle

Manual testing In Manual Testing, Testers manually execute test cases without using any automation tools. Any new application must be manually tested before its testing can be automated. Manual testing requires more effort, but is necessary to check automation feasibility. Automated testing may be done using some testing tools to generate test cases

Black-box VS White-box testing

System testing System testing is actually a series of different tests whose sole purpose is to exercise the full computer based system. System testing falls under the black box testing category of software testing.

Integration testing A typical software project consists of multiple software modules, coded by different programmers. Integration testing focuses on checking data communication amongst these modules. A Module in general is designed by an individual software developer whose understanding and programming logic may differ from other programmers. Integration testing becomes necessary to verify the software modules work in unity

Unit testing The objective of unit testing is to isolate a section of code and verify its correctness. In procedural programming a unit may be an individual function or procedure The goal of unit testing is to isolate each part of the program and show that the individual parts are correct. Unit testing is usually performed by the developer.

Demo Regression testing Code coverage TESTNG Selenium Search for Appium(Android frontend)