introduction to testing. topics who are we? who are we? software testing definition and goals...

Post on 17-Jan-2016

218 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Introduction to TestingIntroduction to Testing

TopicsTopics

Who are we?Who are we? Software Testing Definition Software Testing Definition

and Goalsand Goals Facts and NumbersFacts and Numbers

The Software Quality DilemmaThe Software Quality Dilemma

CostTime

Quality

TopicsTopics

Who are we?Who are we? Software Testing Definition Software Testing Definition

and Goalsand Goals Facts and NumbersFacts and Numbers

Software Testing - Definition Software Testing - Definition “The process of exercising or evaluating

a system by manual or automated

means to verify that it satisfies specified

requirements or to identify differences

between expected and actual results.”

(IEEE Standard Glossary, 1983)

Software TestingSoftware Testing

Software testing is Software testing is notnot a phase a phase It is a process that should be integrated into It is a process that should be integrated into

the entire software life-cyclethe entire software life-cycle There are testing deliverables associated with There are testing deliverables associated with

every phase of developmentevery phase of development

What are the Goals of Testing?What are the Goals of Testing?

To locate and prevent bugs as early as possibleTo locate and prevent bugs as early as possible To perform all Tests according to the To perform all Tests according to the

Requirements, in the most effective and economic Requirements, in the most effective and economic wayway

To bring the software product to a level of quality To bring the software product to a level of quality that is appropriate for the clientthat is appropriate for the client

We perform all of the above throughWe perform all of the above through Methodology Implementation Methodology Implementation

Why Does Software Have Why Does Software Have Bugs?Bugs?

Miscommunication or Lack of Miscommunication or Lack of CommunicationCommunication

MisunderstandingsMisunderstandings Time PressureTime Pressure Programmer’s Skill Level is LowProgrammer’s Skill Level is Low

Bad Communication

Bad Communication - Bad Communication - Requirements Requirements

TopicsTopics

Who are we?Who are we? Software Testing Definition Software Testing Definition

and Goalsand Goals Facts and NumbersFacts and Numbers

Where do Software Problems Where do Software Problems Come From?Come From?

Insufficiently defined requirementsInsufficiently defined requirements 50%50% Ambiguous or insufficient designAmbiguous or insufficient design30%30% Programming errors Programming errors 20%20%

0

20

40

60

80

100

Req Design Coding Int. test Sys. test Operation

Cost of Fixing BugsCost of Fixing Bugs

The later a bug is found, the higher the

cost of fixing it

RememberRemember

SOW DPD CODING TESTING OGS

Errors? Errors? Fix Them as Early as PossibleFix Them as Early as Possible

Professional Testing Professional Testing

Professionalism in testing is the ability to select the

minimum number of efficient test cases that will verify

the maximum number of system functions.

When to Stop Testing ? When to Stop Testing ?

Never Never When the number of detected defects in When the number of detected defects in

one cycle is less than the agreed upon one cycle is less than the agreed upon numbernumber

When no critical or highly severe When no critical or highly severe defects are detected defects are detected

When the time has expired When the time has expired

Picturing the Test SystemPicturing the Test System

TestTeam

Test Environment

TestProcesses Testware

DesignsAcquiresConfiguresUtilizesSupport

Provides a Platform

for the operation of

Determine the

usage of

DesignsAcquires

ConfiguresUtilizesSupport

CreateArticulates

TrainsApplies

Internalize

top related