Dynamic Testing Techniques
Transcript of Dynamic Testing Techniques
![Page 1: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/1.jpg)
ISTQB® - CTFL Free Live Online Webinar!
Dynamic Testing Techniques
Website: www.multisoftvirtualacademy.com Email: [email protected] Contact No: +918130666206/209
![Page 2: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/2.jpg)
WHAT IS A TESTING TECHNIQUE?
BLACK AND WHITE BOX TESTING
BLACK BOX TEST TECHNIQUES
WHITE BOX TEST TECHNIQUES
ERROR GUESSING
Dynamic Testing Techniques
![Page 3: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/3.jpg)
Why Dynamic Test Techniques?
• Exhaustive testing (use of all possible inputs and conditions) is impractical
– must use a subset of all possible test cases
– must have high probability of detecting faults
• Need thought processes that help us select test cases more intelligently
– test case design techniques are such thought processes
![Page 4: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/4.jpg)
What is a Testing Technique?
A procedure for selecting or designing tests
Based on a structural or functional model of the
software
Successful at finding faults
![Page 5: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/5.jpg)
Advantages of Techniques!
• Effective testing: find more faults
– focus attention on specific types of fault
– know you're testing the right thing
• Efficient testing: find faults with less effort
– avoid duplication
– systematic techniques are measurable
![Page 6: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/6.jpg)
What is a testing technique?
BLACK AND WHITE BOX TESTING
Black box test techniques
White box test techniques
Error Guessing
Dynamic Testing Techniques
![Page 7: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/7.jpg)
Types of Systematic Techniques
Functional (Black Box)
• based on behaviour / functionality of software
Structural (White Box)
• based on structure of software
![Page 8: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/8.jpg)
What is a testing technique?
Black and White box testing
BLACK BOX TEST TECHNIQUES
White box test techniques
Error Guessing
Dynamic Testing Techniques
![Page 9: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/9.jpg)
Black Box Test Design Techniques
• Techniques defined in BS 7925-2 – Equivalence partitioning – Boundary value analysis – State transition testing – Cause-effect graphing – Syntax testing – Random testing
• Also defines how to specify other techniques
= Yes
= No
Also a measurement technique?
![Page 10: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/10.jpg)
Equivalence Partitioning (EP)
– divide (partition) the inputs, outputs, etc. into areas which are the same (equivalent)
– assumption: if one value works, all will work
– one from each partition better than all from one
1 100 101 0
valid invalid invalid
![Page 11: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/11.jpg)
Boundary Value Analysis (BVA)
– faults tend to lurk near boundaries – good place to look for faults – test values on both sides of boundaries
1 100 101 0
valid invalid invalid
![Page 12: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/12.jpg)
Example: Loan Application Customer Name
Account number
Loan amount requested
Term of loan
Monthly repayment
Term:
Repayment:
Interest rate:
Total paid back:
6 digits, 1st
non-zero
2-64 chars.
![Page 13: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/13.jpg)
Customer Name
Number of characters:
2 64 65 invalid valid invalid 1
Valid characters: A-Z
a-z -’
space
Conditions Valid Partitions Invalid Partitions Valid Boundaries Invalid Boundaries
Customer Name
2 to 64 characters < 2 characters 2 characters 1 character
Valid characters > 64 characters 64 characters 65 characters
Invalid characters 0 characters
![Page 14: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/14.jpg)
Account Number
5 6 7 invalid
valid invalid
number of digits:
first character: invalid: zero
valid: non-zero
Conditions Valid Partitions Invalid Partitions Valid Boundaries Invalid Boundaries
Account Number
6 digits < 6 digits 100000 5 digits
1st Non Zero > 6 digits 999999 7 digits
1st digit = 0 0 digits
![Page 15: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/15.jpg)
Design Test Cases
Test Case
Description Expected Outcome
1
2
Name: John Smith Acc no: 123456 Loan: 2500 Term: 3 years
Name: AB Acc no: 100000 Loan: 500 Term: 1 year
Term : 3 years Repayment : 79.86 Interest rate : 10% Total paid : 2874.96
Term : 1 year Repayment: 44.80 Interest rate: 7.5% Total paid : 537.60
![Page 16: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/16.jpg)
What is a testing technique?
Black and White box testing
Black box test techniques
WHITE BOX TEST TECHNIQUES
Error Guessing
Dynamic Testing Techniques
![Page 17: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/17.jpg)
White Box Test Design Techniques
• Techniques defined in BS 7925-2
– Statement testing
– Branch / Decision testing
– Data flow testing
– LCSAJ testing
• Also defines how to specify other techniques
= Yes
= No
Also a measurement technique?
![Page 18: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/18.jpg)
Statement Coverage • percentage of executable statements
exercised by a test suite number of statements exercised total number of statements
• example:
– program has 100 statements – tests exercise 87 statements – statement coverage = 87%
= ?
![Page 19: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/19.jpg)
Example of Statement Coverage
Test case
Input Expected output
1 7 7
As all 5 statements are ‘covered’ by this test case, we have achieved
100% statement coverage
read(a)
IF a > 6 THEN
b = a
ENDIF
print b
1
2
3
4
5
Statement numbers
![Page 20: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/20.jpg)
Decision coverage (Branch coverage) • percentage of decision outcomes
exercised by a test suite number of decisions outcomes exercised total number of decision outcomes
• example:
– program has 120 decision outcomes – tests exercise 60 decision outcomes – decision coverage = 50%
=
True
False ?
![Page 21: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/21.jpg)
Decision outcomes through code
? ?
1 2 3
![Page 22: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/22.jpg)
Read A IF A > 0 THEN
IF A = 21 THEN
Print “Key” ENDIF
ENDIF
IF A > 0 THEN
ENDIF
Print “Key”
IF A = 21 THEN
ENDIF
Example:
– Minimum tests to achieve: • Statement coverage: ___
• Branch coverage: ___
1
3
Read A
Yes A=21
Yes
No
End
A>0
No
Read
![Page 23: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/23.jpg)
What is a testing technique?
Black and White box testing
Black box test techniques
White box test techniques
ERROR GUESSING
Dynamic Testing Techniques
![Page 24: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/24.jpg)
Error-Guessing
• Always Worth Including
• After Systematic Techniques Have Been Used
• Can Find Some Faults That Systematic Techniques Can Miss
• Supplements Systematic Techniques
![Page 25: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/25.jpg)
Error Guessing: Deriving Test Cases
• Consider:
Past failures
Intuition / experience
Brain storming
![Page 26: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/26.jpg)
Summary: Key Points
1. Test techniques are ‘best practice’: help to find faults
2. Black Box techniques are based on behaviour
3. White Box techniques are based on structure
4. Error Guessing supplements systematic techniques
Dynamic Testing Techniques
![Page 27: Dynamic Testing Techniques](https://reader031.fdocuments.in/reader031/viewer/2022012419/617392526633020cf37bae9a/html5/thumbnails/27.jpg)