Académique Documents
Professionnel Documents
Culture Documents
Overview
In this presentation you will learn about Dynamic Testing Techniques.
This is where data is injected and the outputs monitored for the expected output.
The method is dynamic, since we have to supply data to the system under test.
We can design our test data with no understanding of the internal working of the
system called a Black Box Technique.
Alternatively we may choose to structure our data based on a full knowledge of the
internal workings called a White Box Technique. Sometimes also known as Clear
Box, Glass Box, Structural or Crystal techniques.
Another approach is to use our experience an judgement to guess what is the best
values to use for data called Error Guessing.
In this unit we will learn about 2 specific Black Box techniques to design tests. These
are:
1.
Equivalence Partitioning
2.
Objectives
By the end of this presentation you should be able to:
1. Understand the terms:
1. Dynamic Testing
2. Black Box
3. Equivalence Partitioning
4. Boundary Value Analysis
2. Understand when it is appropriate to use Black Box techniques
3. Be able to identify equivalence partitions within data.
4. Be able to identify boundary values for a system under test.
5. Use material from this unit and reference it to BS7925-1 and BS7925-2
Dynamic Analysis
Dynamic Analysis is the process of evaluating a system or component
based upon its behaviour during execution BS7925-1 adopted from the
IEEE (Institute of Electrical and Electronics Engineers)
We use Dynamic Analysis techniques to define test inputs and matching
expected outputs to exercise a software component or a full system.
There are several Black Box techniques in designing data for testing:
Equivalence Partitioning
Boundary Value Analysis
Cause-effect Graphing (not covered here)
Other techniques e.g. Classification Tree Analysis (not covered here)
Test Techniques
We apply test techniques to ensure:
1. To ensure a systematic approach to testing so that we use the
minimum number of tests to achieve as much testing as possible in a
cost affective way. In life critical systems we want to ensure that we have
not missed out any specific values.
2. We want to ensure that tests are repeatable. We may have to justify to
our managers, customers and even a court that we tested a specific set
of values.
3. We want to provide confidence that we are applying a well structured
testing approach.
NOTE: We can use tools to help us in defining tests. E.g. the
Classification Tree Approach used the Classification Tree Editor (CTE),
which is covered in a separate presentation.
Black box approaches to testing require no knowledge of the internal
working of an application. In contrast White box approaches do require
knowledge. White box approaches can sometimes be called clear box,
transparent or crystal approaches.
Notes:
If checking Volume level, you may want a decibel meter and
specify the signal strength at the aerial input.
Would you want to check any ranges for each identified input?
8
Smoke Test
Box testing
Focuses
Data input
Black Box
Actual Results
If the actual results are as expected then the test has passed
10
Component Testing
Integration of Components (called integration in the small)
Systems Testing
Systems Integration (called integration in the large)
User Acceptance Testing (UAT)
Assisting in the business verification and validation of the application
Operational Acceptance Testing (OAT)
In short you can use Black Box analysis at every phase. White box
testing however helps supplement the testing analysis for code
development and integration (in the small).
11
Equivalence Partitioning #1
It
Equivalence Partitioning #2
Equivalence
Partitioning:
13
Equivalence Partitioning #3
EP Example:
Consider a requirement for a software system:
The
14
Equivalence Partitioning #4
The
18
56
Invalid Partition
Valid Partition
Invalid Partition
Less than or
equal to 18
Range 19 to 56
Greater than 56
15
Equivalence Partitioning #5
18
56
Invalid Partition
Valid Partition
Invalid Partition
=< 18
<56
Boundary Analysis #1
17, 18, 19
55, 56, 57
Boundaries
Invalid Partition
Valid Partition
Invalid Partition
Less than 18
Range 17 to 56
Greater than 56
Test values would be: 17, 18, 19, 55, 56 and 57.
This assumes that we are dealing with integers and so least significant digit
is 1 either side of boundary.
17
Boundary Analysis #2
For
Boundary Limit -1
Boundary Limit + 1
Boundary Analysis #3
20
17, 18, 19
invalid
24, 25, 26
40%
discount
38, 39, 40
10%
discount
55, 56, 57
10%
discount
0%
discount
Might also test: 0, -5, 200, Fred, 0.00000001, some typical mid
range values: 21, 32, 47. Note boundary values tested +/- least
significant recorded digit.
21
22
Question 1
One
Solution 1
Question 2
In
Solution 2
The
27