This presentation is designed to explain concept of Test
Framing and to tell what is test framing what are its
advantages and why it should be used
What is Test Framing !!!
Telling two composite stories
A Story of product and a Story of our testing skills
Test framing is a key skill that helps us to compose,
edit, narrate, and justify the story of our testing in a
logical, coherent, and rapid way.
Goal of Test Framing
Link each testing activity with the testing mission.
Justify the story of our testing in a logical way
“Test framing is the capacity to follow and express, at any
time, a direct line of logic that connects the mission to the
Purpose of Test Framing
The purpose of test framing is to be able to provide clear, logical,
credible answers to questions like
Why are you running (did you run, will you run) this test (and not
some other test)?
Why are you running that test now (did you run that test then, will
you run that test later)?
Why are you testing (did you test, will you test) for this requirement,
rather than that requirement? configuration of the product?
How does your test result relate to your test design?
Was the mission related to risk? How does this test relate to that risk?
How does this test relate to other tests you might have chosen?
Are you qualified (were you qualified, can you become qualified) to
Why do you think that is (was, would be) a problem?
Proposition & Connectives
“A Proposition is a simple statement that expresses a concept.
The statement may be true or false. In test framing, we typically
use propositions as affirmative declarations or assumptions.
Occasionally , we will use propositions as the basis of hypotheses
to be tested or falsified.”
“Connectives are word or phrases that link or relate
propositions to each other, generating new propositions by
inference. Examples include “and”, “not”, “if ”, “therefore”, “and
so”, “unless”, “because”, “since”, “on the other hand”, “but maybe”,
and so forth.”
Mission: Find problems that might threaten the value of the product, such as program
misbehavior or data loss.
Proposition: There’s an input field here.
Proposition: Upon the user pressing Enter, the input field sends data to a buffer.
Proposition: Unconstrained input may overflow a buffer.
Proposition: Buffers that overflow clobber data or program code.
Proposition: Clobbered data can result in data loss.
Proposition: Clobbered program code can result in observable misbehavior.
Connecting the propositions: IF this input field is unconstrained, AND IF it consequently
a buffer, THEREFORE there’s a risk of data loss OR program misbehavior.
Proposition: The larger the data set that is sent to this input field, the greater the chance of
clobbering program code or data.
Connection: THEREFORE, the larger the data set, the better chance of triggering an observable
Connection: IF I put an extremely long string into this field, I’ll be more likely to observe the
Conclusion: THEREFORE, as a test, I will try to paste an extremely long string in this input
field AND look for signs of mischief such as garbage in records that I observed as intact before,
or memory leaks, or crashes, or other odd behavior.
Why Test Framing!!!
When we test, we not only apply information we also reveal it
Y ou might justify unframed tests in terms of surprises, rather
than known theories of error
Test framing provides a way to tester to justify his/her testing
through logical reasoning
It provides more conformance to requirement and improvement
in quality standards of product