Dynamic Testing: Black Box Testing Techniques
Dynamic Testing: Black Box Testing Techniques
Testing Techniques
1
Black Box Testing
Evolution of Software Testing
2
Black Box Testing
Evolution of Software Testing
• To test the modules independently.
3
Boundary Value Analysis (BVA)
4
Boundary Value Analysis (BVA)
• Robustness Testing
5
Boundary Value Checking
6
Boundary Value Checking
• Anom, Bmin
• Anom, Bmin+
• Anom, Bmax
• Anom, Bmax-
• Amin, Bnom
• Amin+, Bnom
• Amax, Bnom
• Amax-, Bnom
• Anom, Bnom
7
Robustness Testing Method
• Amax+, Bnom
• Amin-, Bnom
• Anom, Bmax+
• Anom, Bmin-
•
• It can be generalized that for n input variables in a module, 6n+1
test cases are designed with Robustness testing.
8
Software Testing
Worst Case Myths
Testing Method
• When more than one variable are in extreme values, i.e. when more
than one variable are on the boundary. It is called Worst case
testing method.
9
Example
10
Example
11
Equivalence Class Testing
12
Example
14
State Table Based Testing
15
State Table Based Testing
• State Table
16
State Table Based Testing
17
Decision Table Based Testing
18
Decision Table Based Testing
Example
• A program calculates the total salary of an employee with the conditions that
if the working hours are less than or equal to 48, then give normal salary.
The hours over 48 on normal working days are calculated at the rate of 1.25
of the salary. However, on holidays or Sundays, the hours are calculated at
the rate of 2.00 times of the salary. Design the test cases using decision
table testing.
19
Decision Table Based Testing
20
Cause-Effect Graphing based Testing
21
Cause-Effect Graphing based Testing
Example
• A program has been designed for the determination of nature of
roots of a quadratic equation. Quadratic equation takes three input
values from the range [0,100]. Design all test cases using Cause-
Effect graphing technique.
22
Cause-Effect Graphing based Testing
• C1: a ≠ 0
• C2: b = 0
• C3: c = 0
• C4: D > 0 where D is b2 – 4 * a * c
• C5: D < 0
• C6: D = 0
• C7: a = b = c
• C8: a = c = b/2
• E1: Not a quadratic equation
• E2: Real Roots
• E3: Imaginary Roots
• E4: Equal Roots
23
Cause-Effect Graphing based Testing
24
Cause-Effect Graphing Based Testing
25
Error Guessing
• Error guessing is the method used when all other methods fail or it
is the method for some special cases which need to be tested.
• It means error or bug can be guessed which do not fit in any of the
earlier defined situations. So test cases are generated for these
special cases.
26