slide1
Download
Skip this Video
Download Presentation
By Dr. Wararat Songpan ( Rungworawut ) Faculty of Computer Science, Department of Science,

Loading in 2 Seconds...

play fullscreen
1 / 31

By Dr. Wararat Songpan ( Rungworawut ) Faculty of Computer Science, Department of Science, - PowerPoint PPT Presentation


  • 198 Views
  • Uploaded on

Chapter 3: Equivalence Class Testing :EC 322235 Software Testing. By Dr. Wararat Songpan ( Rungworawut ) Faculty of Computer Science, Department of Science, Khon Kaen University, Thailand. E quivalence C lass Testing : EC.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'By Dr. Wararat Songpan ( Rungworawut ) Faculty of Computer Science, Department of Science,' - amal


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1
Chapter 3: Equivalence Class Testing :EC 322235Software Testing

By

Dr. WararatSongpan (Rungworawut)

Faculty of Computer Science,

Department of Science,

KhonKaen University, Thailand

e quivalence c lass testing ec
EquivalenceClassTesting : EC
  • The next step from Boundary Value Testing is a Functional Testing.
  • Define equivalence classes on the range of input or output for each variables also called partition method.
  • Completeness and greatly reduces redundancy.
slide3
EquivalenceClassTesting: EC
  • Function F is implemented and a function F, of two variables x1 and x2.
  • x1 and x2 have the following boundaries and intervals within boundaries:
    • a=
    • e=
  • So, invalid valueforx1andx2as follows,
    • x1 < a andx1>d
    • x2 g

Remarks: [ = closed interval, ( = open interval

e quivalence c lass testing ec1
EquivalenceClassTesting : EC

There are 4 sub-techniques of Equivalence Class Testing.

1) Weak Normal Testing :WN

2) Strong Normal Testing :SN

3) Weak Robust Testing :WR

4) Strong Robust Testing :SR

1 w eak n ormal testing wn
1) Weak Normal Testing :WN

Valid EC:

Ec1 = {x1: a=

Ec2= {x1: b=

Ec3 = {x1: c <= x1 <= d}

Ec4 = {x2: e =

Ec5 = {x2: f =< x2 <=g}

x2

g

f

e

x1

c

a

b

d

  • One variable from each equivalence class as “single fault assumption”
  • Values identified in systematic way
for example addition x1 and x2 simple example
For example: Addition x1 and x2 (Simple example)

Function: Addition X1 and x2

x1

x2

Results =

Ok

Cancel

simple example wn test case design
Simple example: WN Test case design

x2

Valid EC:

Ec1 = {x1: 5=

Ec2= {x1: 10=

Ec3 = {x1: 15 <= x1 <= 20}

Ec4 = {x2: 5 =

Ec5 = {x2: 10=< x2 <=20}

20

10

5

x1

15

5

10

20

2 s trong n ormal testing sn
2) Strong Normal Testing : SN

x2

  • Test cases taken from each element of Cartesian product of the equivalence classes. Cartesian product guarantees notion of completeness.
  • SN isa“multiple fault assumption”

g

f

e

x1

c

a

b

d

simple example sn test case design
Simple example: SN Test case design

x2

Valid EC:

Ec1 = {x1: 5=

Ec2= {x1: 10=

Ec3 = {x1: 15 <= x1 <= 20}

Ec4 = {x2: 5 =

Ec5 = {x2: 10=< x2 <=20}

20

10

5

x1

15

5

10

20

3 w eak r obust testing wr
3) Weak Robust Testing (WR)

x2

Additional consider in Invalid EC:

Ec6 = {x1: x1 < a}

Ec7 = {x1: x1 > d}

Ec8 = {x2 : x2 < e}

Ec9 = {x2 : x2 > g}

  • Robust - consideration of invalid values and extension to WN.
  • Invalid inputs – each test case has one invalid value, single fault should cause failure as “single fault assumption”.
  • Problems with robust EC Testing specification (expected output for invalid TC?)

g

f

e

x1

c

a

b

d

4 s trong r obust t esting sr
4) Strong Robust Testing :SR

x2

  • Robust - consideration of invalid values and extension to SN.
  • Strong – multiple faults assumption.
  • Test cases taken from each element of Cartesian product of the Valid EC and Invalid EC

g

f

e

x1

c

a

b

d

triangle program simple
Triangle Program (Simple)
  • Input 3 integers: a, b, c are side of triangle that have boundaries
  • a, b, c are [1,200].
  • Output is type of triangle
    • Equilateral
    • Isosceles
    • Scalene
    • Not a Triangle
wn test case design triangle program simple
WN Test case design Triangle Program (Simple)

Valid EC

  • EC1: 1<=a<= 200
  • EC2: 1<=b<=200
  • EC3: 1<=c<=200
sn test case design triangle program simple
SN Test case design Triangle Program (Simple)

Valid EC

  • EC1: 1<=a< 200
  • EC2: 1<=b<=200
  • EC3: 1<=c<=200
equivalence class triangle problem output
Equivalence Class : Triangle Problem (Output)
  • Using outputfrom specification translate into Equivalence Class(EC)
  • 4possible outputs: Equilateral, Isosceles, Scalene, and Not a Triangle
  • 4outputequivalence classes:
    • Ec1 = { : the triangle with sides a, b and c is equilateral}
    • Ec2 = { : the triangle with sides a, b and c is Isosceles}
    • Ec3 = { : the triangle with sides a, b and c is Scalene) }
    • Ec4 = { : the triangle with sides a, b and c is Not a Triangle}
weak robust wr test cases triangle program
Weak Robust(WR) Test Cases: Triangle Program

Consideration Invalid EC with WN

  • EC5: a> 200
  • EC6: a < 1
  • EC7: b>200
  • EC8: b < 1
  • EC9: c>200
  • EC10: c<1
improved ec triangle program
Improved EC: Triangle Program
  • Improved EC Input classes for each type of triangle:
    • EC1 = {: a=b=c}
    • EC2 = {: a=b, a ≠ c}
    • EC3 = {: a=c, a ≠ b}
    • EC4 = {: b=c, a ≠ b}
    • EC5 = {:a ≠ b, a ≠ c, b ≠ c }
  • Extra design of input classes: Check every side of triangle as not a triangle
    • EC6 = {: b + c <= a}
    • EC7 = {: a + c <= b}
    • EC8 = {: a + b <= c}
equivalence classes ec nextdate problem
Equivalence Classes(EC) : NextDate Problem
  • Valid EC
    • M1 = {month: 1 =< month =<12}
    • D1 = {day: 1 =< day =< 31}
    • Y1 = {year: 1812 =< year =< 2012}
  • Invalid EC
    • M2 = {month: month <1}
    • M3 = {month: month >12}
    • D2 = {day: day <1}
    • D3 = {day: day >31}
    • Y2 = {year: year < 1812}
    • Y3 = {year: year > 2012}
improved input equivalence classes nextdate problem
ImprovedInput Equivalence Classes: NextDate Problem
  • M1 = {month: monthhas 30days}
  • M2 = {month: monthhas 31 days}
  • M3 = {month: month = February}
  • D1 = {day: 1 =< day =< 28}
  • D2 = {day: day = 29}
  • D3 = {day: day = 30}
  • D4 = {day: day = 31}
  • Y1 = {year: year is leap year}
  • Y2= {year: year is common year }
input equivalence class the commission problem
Input Equivalence Class: The Commission Problem

Valid EC

  • L1 = {lock: 1 =< locks =< 70}
  • S1 = {stocks: 1=< stocks =< 80}
  • B1 = {barrels: 1 =< barrels =< 90}

Invalid EC

  • L2 = {locks: locks <1}
  • L3 = {locks: locks > 70}
  • S2 = {stocks: stocks < 1}
  • S3 = {stocks: stocks > 80}
  • B2 = {barrels: barrels <1}
  • B3 = {barrels: barrels >90}
using output to equivalence classes test cases commission problem
Usingoutput toEquivalence Classes Test Cases: Commission Problem
  • Sales = 45 * locks +30 * stocks + 25 * barrels
    • S1 = {: sales =<1000}
    • S2 = {: 1000 < sales =<1800}
    • S3 = {: sales > 1800 }
  • How to design WN Test Case??
specification of commision
Specification of Commision

Sales = 45*Locks + 30*Stock + 25*barrels

if sales <= 1000

commission= 10% * sales

if sales >1000

commission= 10%*1000 + 15%*(sales– 1000)

if> 1800

commission= 10%*1000+ 15%*800+ 20%* (sales-1800)

summary of ec testing
Summary of EC Testing

Normal vs Robust

Single fault vs Multiple fault assumption

ad