Download presentation
Presentation is loading. Please wait.
1
Boundary Testing To Infinity and Beyond …
Robert Sabourin President AmiBug.Com, Inc. Montreal, Canada November 12, 2018 © Robert Sabourin, 2007
2
Elevator Parable Robert Sabourin , Software Evangelist President
AmiBug.Com Inc. Montreal, Quebec, Canada November 12, 2018 © Robert Sabourin, 2007
3
Overview Introduction Traditional Boundary Risks Requirements
Data Entry Processing Exploring Boundaries Testing Objectives Discover Variables Experimentation Analysis Stress Boundaries Behavioral Performance Quality Factors November 12, 2018 © Robert Sabourin, 2007
4
Boundary Questions What is a: variable? boundary? boundary test?
November 12, 2018 © Robert Sabourin, 2007
5
Boundary Questions What is a variable? To VARY is to CHANGE
A variable is something which can change Software behavior depends on the VALUES of many VARIABLES Anything which influences the behavior of software could be a variable November 12, 2018 © Robert Sabourin, 2007
6
Boundary Questions What is a boundary? Many concepts Extreme Values
Minimum Maximum Singularities Discontinuities Points at which behavior changes November 12, 2018 © Robert Sabourin, 2007
7
Boundary Questions What is a boundary test? ______________________
November 12, 2018 © Robert Sabourin, 2007
8
Boundary Questions What is a boundary test? Confirmatory test
Confirm behavior is as expected at boundaries of variables November 12, 2018 © Robert Sabourin, 2007
9
Boundary Questions What is a boundary test? Exploratory discover …
which variables influence behavior the behavior as values are varied values which do not cause behaviors to change November 12, 2018 © Robert Sabourin, 2007
10
Boundary Questions Why are boundary tests important? Experience
Knowledge Boundaries values are sometimes considered as the best representative values in an equivalence class November 12, 2018 © Robert Sabourin, 2007
11
Taking AIM Testing Approaches Equivalence Classes Usage Scenarios
Quality Factors November 12, 2018 © Robert Sabourin, 2007
12
Taking AIM Requirements Use cases Functional requirements
Quality factors Constraints Written requirements Implicit requirements November 12, 2018 © Robert Sabourin, 2007
13
Taking AIM Usage Scenarios Identify classes of users
Identify how users will use system Describe scenarios Use Story board or similar approaches Identify variations November 12, 2018 © Robert Sabourin, 2007
14
Quality Factors Importance Different Application Types
November 12, 2018 © Robert Sabourin, 2007
15
Taking AIM Equivalence Classes November 12, 2018
© Robert Sabourin, 2007
16
Edsger W. Dijkstra “Program testing can be used to show the presence of bugs, but never to show their absence” November 12, 2018 © Robert Sabourin, 2007
17
Taking AIM Equivalence class
A subset of all possible test values to a variable Each member assumed provide the same info Each variable may have many classes Equivalence class are not mutually exclusive Focus testing Reduce the number of test cases November 12, 2018 © Robert Sabourin, 2007
18
Sets – Venn Diagram Equivalence Classes
b c d a b c d e f b a c November 12, 2018 © Robert Sabourin, 2007
19
Equivalence Classes Equivalence Sources Requirements Code Data
Business logic Capabilities Ranges Constraints Code Decisions Intermediate computations Data Input fields Database Internal structures November 12, 2018 © Robert Sabourin, 2007
20
AIM - Equivalence Classes
November 12, 2018 © Robert Sabourin, 2007
21
Example: Date Field Equivalence Classes Mind Map
November 12, 2018 © Robert Sabourin, 2007
22
Example: Claim Amount Equivalence Classes Mind Map
November 12, 2018 © Robert Sabourin, 2007
23
November 12, 2018 © Robert Sabourin, 2007
24
Boundary Discontinuity November 12, 2018 © Robert Sabourin, 2007
25
Boundary Singularity November 12, 2018 © Robert Sabourin, 2007
26
Boundary Behavioral Change November 12, 2018 © Robert Sabourin, 2007
27
Boundary Jump Discontinuity November 12, 2018 © Robert Sabourin, 2007
28
Boundary Removable Discontinuity November 12, 2018
© Robert Sabourin, 2007
29
Boundary Conic Sections Intersect a plane with a cone Parabola Circle
Ellipse Hyperbola November 12, 2018 © Robert Sabourin, 2007
30
November 12, 2018 © Robert Sabourin, 2007
31
Boundary Fractal Roots Polynomial: x**5 - 1 November 12, 2018
© Robert Sabourin, 2007
32
Boundary Time Domain Frequency Domain November 12, 2018
© Robert Sabourin, 2007
33
Boundary Political Geography November 12, 2018 © Robert Sabourin, 2007
34
Boundary November 12, 2018 © Robert Sabourin, 2007
35
Boundary Physical Geography November 12, 2018 © Robert Sabourin, 2007
36
Boundary November 12, 2018 © Robert Sabourin, 2007
37
Boundary Going over the edge November 12, 2018 © Robert Sabourin, 2007
38
Boundary Off the edge of the earth November 12, 2018
© Robert Sabourin, 2007
39
Analysis & Design Quebec City Bridge, 1916 Tacoma Narrows, 1940
Construction collapse Stress due to scale Tacoma Narrows, 1940 Collapse during normal operation Stress due to instability Wind was only 42 mph November 12, 2018 © Robert Sabourin, 2007
40
Taking AIM Quality Factors Scale Meter Goal November 12, 2018
© Robert Sabourin, 2007
41
Taking AIM November 12, 2018 © Robert Sabourin, 2007
42
Taking AIM November 12, 2018 © Robert Sabourin, 2007
43
Boundaries Limits of authority November 12, 2018
© Robert Sabourin, 2007
44
Boundary Limits of patience November 12, 2018 © Robert Sabourin, 2007
45
Boundary Visual acuity Are these two points the same November 12, 2018
© Robert Sabourin, 2007
46
Boundary November 12, 2018 © Robert Sabourin, 2007
47
Boundary November 12, 2018 © Robert Sabourin, 2007
48
Boundary Color Correctly name shades of yellow November 12, 2018
© Robert Sabourin, 2007
49
Boundary Phonetic Similarity Conscious, Conscience
conscious = adjective meaning awake, perceiving: Despite a head injury, the patient remained conscious. conscience = noun meaning the sense of obligation to be good: Chris wouldn't cheat because his conscience wouldn't let him. November 12, 2018 © Robert Sabourin, 2007
50
Boundary Delay timing Pauses and delays in the middle of transactions
November 12, 2018 © Robert Sabourin, 2007
51
Boundary Security The ethical hacker How long to break in?
November 12, 2018 © Robert Sabourin, 2007
52
Boundary Resonant frequency November 12, 2018 © Robert Sabourin, 2007
53
Boundary Toy train set Which variables lead to a crash?
November 12, 2018 © Robert Sabourin, 2007
54
November 12, 2018 © Robert Sabourin, 2007
55
Performance Testing Experiments
November 12, 2018 © Robert Sabourin, 2007
56
Performance Testing Experiments
November 12, 2018 © Robert Sabourin, 2007
57
Performance Testing Experiments
November 12, 2018 © Robert Sabourin, 2007
58
Performance Testing Experiments
November 12, 2018 © Robert Sabourin, 2007
59
Performance Testing Experiments
November 12, 2018 © Robert Sabourin, 2007
60
Performance Testing Experiments
November 12, 2018 © Robert Sabourin, 2007
61
Related Rates November 12, 2018 © Robert Sabourin, 2007
62
Minimal Platform November 12, 2018 © Robert Sabourin, 2007
63
Understanding Complex Technology Quantitatively By Tom Gilb
Rank Credibility 0.0 Wild guess, no credibility 0.1 We know it has been done somewhere 0.2 We have one measurement somewhere 0.3 There are several measurements in the estimated range 0.4 The measurements are relevant to our case 0.5 The method of measurement is considered reliable 0.6 We have used the method in-house 0.7 We have reliable measurements in-house 0.8 Reliable in-house measurements correlate to independent external measurements 0.9 We have used the idea on this project and measured it 1.0 Perfect credibility, we have rock solid, contract- guaranteed, long-term, credible experience with this idea on this project and, the results are unlikely to disappear November 12, 2018 © Robert Sabourin, 2007
64
Variable Type Boundaries
Numbers and Calculations Computer Representations Integer Floating Point Casting Precision Epsilon Rounding Error unsigned char 255 short int -32,767 32,767 unsigned short 65,535 int unsigned int long int -2,147,483,647 2,147,483,647 unsigned long 4,294,967,295 November 12, 2018 © Robert Sabourin, 2007
65
Variable Type Boundaries
November 12, 2018 © Robert Sabourin, 2007
66
Variable Type Boundaries
November 12, 2018 © Robert Sabourin, 2007
67
Variable Type Boundaries
Times Dates Causality Ranges Formats November 12, 2018 © Robert Sabourin, 2007
68
Date/Time Boundaries November 12, 2018 © Robert Sabourin, 2007 Day
First Day of Month Last Day of Month Month First Month of Year Last Month of Year Year First Year of Century Last Year of Century First Year of Millennium Last Year of Millennium Leap Year Leap Century Hour First hour of day Last hour of day First hour of morning Last hour of morning First hour of afternoon Last hour of afternoon Leap hour forward Leap hour backward Leap day forward Leap day backward Minute First minute of hour Last minute of hour Second First second of minute Last second of minute November 12, 2018 © Robert Sabourin, 2007
69
Date/Time Boundaries Transactions Crossing Time Ranges
Crossing hour (for example Newfoundland time zone is off by 30 minutes from Atlantic time zone) Crossing AM PM (in one time zone transaction is in morning, in another time zone transaction is in the afternoon) Crossing Day (in on time zone transaction is in different day) Crossing Year (in one time zone transaction is in different year) Crossing Month (in one time zone transaction is in different month) Crossing Century (in one time zone transaction is in different century) Crossing Millennium (in one time zone transaction is in different millennium) November 12, 2018 © Robert Sabourin, 2007
70
Variable Type Boundaries
Systems of equations Matrices Condition November 12, 2018 © Robert Sabourin, 2007
71
Variable Type Boundaries
Text Strings Collation Syntax November 12, 2018 © Robert Sabourin, 2007
72
Bidirectional Text Boundaries
November 12, 2018 © Robert Sabourin, 2007
73
To Boldly Go November 12, 2018 © Robert Sabourin, 2007
74
Boundary Buzz Light-year To infinity and beyond November 12, 2018
© Robert Sabourin, 2007
75
Thank You Questions? November 12, 2018 © Robert Sabourin, 2007
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.