24 testing strategies

34
CSC207 Lecture 24 Lecture 24 T estin Strate ies and Debu in T estin Strate ies and Debu in

Upload: agnes-ong

Post on 06-Apr-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 1/34

CSC207 Lecture 24

Lecture 24

Testin Strate ies and Debu in

Testin Strate ies and Debu in

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 2/34

CSC207 Lecture 24

 

1. Unit Testing2. Inte ration Testin

3. Validation TestingPLAN

.  

Each Task usesEach Task uses 1 test technique1 test technique

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 3/34

CSC207 Lecture 24

1. Unit Testing

Focuses on unit (e.g. object (class) & module)

 

Static – e.g. desk checking, compilation

-

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 4/34

CSC207 Lecture 24

Unit Testing forObjects:

  ec r ver

Object (n/a) Object (n/a) Object Stub

Test harness (scaffolding)Test harness (scaffolding)

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 5/34

CSC207 Lecture 24

What forms the testharness?

-

Central

us omer

1:Order2:Check

: us omer

1:Order2:Check

souven rinfo

3:Check

antique

souven rinfo

3:Check

antique

Souvenirs Antiques Invoice Manager

: ssue nvo ce

:Souvenirs :Antiques :Invoice Manager

 

TransactionTransaction--basedbased

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 6/34

CSC207 Lecture 24

 :CandidateAdministration

for examfor exam1:Register

3:Checkattendance

2:Verify

AU reqmts 3:Checkattendance

2:Verify

AU reqmts

:AU system:Attendance

:AU system:AttendanceUse caseUse case

on oron ordetermines testdetermines testharnessharness

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 7/34

CSC207 Lecture 24

Examples of Object

Drivers:

Driver 1

Object A B.OperationB Object B

OperationB

Driver 2

ect . pera on(attribC)

attribC

Object D

OperationD

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 8/34

CSC207 Lecture 24

Driver 3

 

fileE

Object F.

(rec-n )

OperationE OperationF

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 9/34

CSC207 Lecture 24

Ex m l f : 

Object AA.OperationA

 

Object CC.O erationC

u

OperationA“table validated”

OperationC Returns record n 

fileC

Stub 2

Object BB.OperationB

attributeB

OperationB Returns attributeB

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 10/34

CSC207 Lecture 24

Unit Testin forModules:

DRIVERCOMPILER

FLOW ANALYZER

WHITE BOX TESTING

BLACK BOX TESTING

STUB STUB

Test harness depends on module’s locationTest harness depends on module’s location

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 11/34

CSC207 Lecture 24

 

ADVANTAGES DISADVANTAGES

Narrows focus of test Requires test harness

Function tests lateEasier debugging

Parallel test efforts Requires scheduling

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 12/34

CSC207 Lecture 24

2. Integration Testing

Non-incremental

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 13/34

CSC207 Lecture 24

-(Big-Bang Approach)

Components are first unit tested

Assembly of every components at the same

time Suitable for small to moderate sized systems

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 14/34

CSC207 Lecture 24

Disadvantages:

Excessive use of test harness D in i h r r 

Concentrated use of limited resources

 

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 15/34

CSC207 Lecture 24

ncremen a pproac(OO Systems)

••StimulusStimulus OrderOrder (use(use--based)based)

••RegressionRegression teststests maymay bebe neededneeded

••

••DetermineDetermine “bottlenecks”“bottlenecks” ifif anyany

••UseUse testtest scheduleschedule toto synchronisesynchronise

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 16/34

CSC207 Lecture 24

:CandidateAdministration

1:Register

 

3:Checkattendance

2:VerifyAU reqmts2:VerifyAU reqmts

3:Checkattendance

:AU system:Attendance

Monitor

:AU system:Attendance

Monitor

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 17/34

CSC207 Lecture 24

Exam le 2:Exam le 2:

:e-RetailCentral

Customer:Customer

2:Checksouvenir

1:Order1:Order

2:Checksouvenir

4:Issue invoice

: ecantique

info

: ecantique

info4:Issue invoice

Invoice ManagerSouvenirsRetail

AntiquesRetail

:SouvenirsRetail

:AntiquesRetail

:Invoice Manager

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 18/34

CSC207 Lecture 24

Example 3:Example 3: :HotelMS

bottleneckbottleneck

:Guests :Booking :Rooms3:update

2:check status

:Walk-ins :Tourists1:enquire

 

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 19/34

CSC207 Lecture 24

 (FO Systems)

Guided by Structure Chart

Top-Down (Depth or Breadth)

Bottom-Up (Depth, Breadth orCluster)

Sandwich Approach

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 20/34

CSC207 Lecture 24

op- own ep - rs

AA

B C D

TOP-

DOWNB C D

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 21/34

CSC207 Lecture 24

opop-- own reaown rea -- rsrs

AA

B C D

TOP-

DOWNB C D

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 22/34

CSC207 Lecture 24

-- --

AA

B C D

BOTTOM-UP

B C D

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 23/34

CSC207 Lecture 24

-- --

AA

B C D

BOTTOM-UP

B C D

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 24/34

CSC207 Lecture 24

--

AA

B C D

BOTTOM-UP

B C D

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 25/34

CSC207 Lecture 24

--

AA

B C D

SANDWICH

B C D

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 26/34

CSC207 Lecture 24

--

AA

B C D

SANDWICH

B C D

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 27/34

CSC207 Lecture 24

3. Validation Testing

Black box testing

– c ec s con ormance o

Acceptance testsalpha  testing: 1 client (bespoke system)

beta testing: many clients

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 28/34

CSC207 Lecture 24

4. System Testing

After installation andcomm ss on ng

Focus on daily operations Black box testing

e. . stress testin sensitivit testin

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 29/34

CSC207 Lecture 24

e ugg ng

1. Brute force.

3. Cause Elimination

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 30/34

CSC207 Lecture 24

1. Brute force

Memory Dumps 

Least efficient (used when all else fails)

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 31/34

CSC207 Lecture 24

2. Backtracking

Begin at error discovery point 

Suitable for small to moderate-sized

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 32/34

CSC207 Lecture 24

3. Cause Elimination

By induction or deduction“ ” 

Organise test cases to isolate potential

Suitable for larger programs or sub-

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 33/34

CSC207 Lecture 24

 

debuggedrea po n s,rea po n s,

steppingstepping

Program

Execution

User

symbolinteractionmanager

RecordsRecords

TracePackage

Symbol ValueRecorder

program owprogram ow

RecordsRecords

data contentsdata contents

8/2/2019 24 Testing Strategies

http://slidepdf.com/reader/full/24-testing-strategies 34/34

CSC207 Lecture 24

T r – r niz i n f k 

Tasks: unit, integration, validation, system 

Integration for OO systems: stimulus order

 order

Validation & S stem Testin

•• Next lectureNext lecture – – Software MaintenanceSoftware Maintenance