Tes+ng
Prepared
by
Soha
Makady
Outline
Decision
tables
Cause-eect
graphs
Decision
Tables
Required
reading:
hCp://istqbexamcer+ca+on.com/what-is-decision-table-
in-so#ware-tes+ng/
Decision
tables
enable
modeling
complex
business
rules
in
a
systema+c
way.
How
does
it
work?
Iden+fy
a
suitable
func+on
or
subsystem
which
reacts
according
to
a
combina+on
of
inputs/events.
The
system
should
not
contain
too
many
inputs
(why?)
Combine
all
those
inputs
into
a
table
to
iden+fy
their
true/false
combina+ons,
and
the
systems
expected
corresponding
behaviour.
Copyright
Soha
Makady
2016
Decision
Tables
Consider
a
loan
applica+on,
where
you
can
enter
the
amount
of
the
monthly
repayment
or
the
number
of
years
you
want
to
take
to
pay
it
back
(the
term
of
the
loan).
If
you
enter
both,
the
system
will
make
a
compromise
between
the
two
if
they
conict.
What
inputs
do
we
have?
Amount
of
loan
Term
of
loan
Black-Box
Tes+ng
Cause-eect
graphing
Cause-eect
Graphing
Equivalence
par++oning
and
boundary
value
analysis
do
not
explore
combina+ons
of
input
circumstances.
Hence,
you
can
go
for
cause-eect
graphing
Cause-eect
Graphing
What
is
a
cause-eect
graph?
A
visual
technique
for
modeling
the
rela+onship
between
the
inputs
and
outputs
of
a
program
The
inputs
(causes)
could
be
specied
as
condi+ons,
and
the
outputs
(eects)
in
terms
of
expected
values
or
behaviour.
Cause-eect
Graphing
What
is
a
cause-eect
graph?
A
cause
is
any
input
condi+on
in
the
requirements
that
may
aect
the
programs
output.
A
cause
can
represent
an
equivalence
class
of
input
condi+ons.
An
eect
is
an
output
condi+on,
or
a
system
transforma+on.
Cause-eect
Graphing
How
are
the
tests
derived?
1. The
specica+on
is
divided
into
workable
pieces.(why?)
E.g.:
When
tes+ng
a
web
page
design,
you
might
test
a
single
menu
tree.
What
would
its
equivalent
logic
circuit
look
like?
Copyright
Soha
Makady
2016
Equivalent
logic
circuit.
Copyright
Soha
Makady
2016
ButA
character
cannot
be
an
A
and
a
B
simultaneously
cause
1
and
cause
2
cannot
be
1
simultaneously.
Hence,
some
constraints
need
to
be
added.
Copyright
Soha
Makady
2016
2. The
Inclusive
(I)
constraint:
At
least
one
of
the
causes
must
be
1.
Copyright
Soha
Makady
2016
4.
The
Requires
(R)
constraint
implies
that
for
C1
to
be
1,
C2
must
be
1
(i.e.,
it
is
impossible
for
C1
to
be
1
and
C2
to
be
0).
Copyright
Soha
Makady
2016
ButA
character
cannot
be
an
A
and
a
B
simultaneously
cause
1
and
cause
2
cannot
be
1
simultaneously.
Hence,
one
constraint
needs
to
be
added.
Copyright
Soha
Makady
2016
ButA
character
cannot
be
an
A
and
a
B
simultaneously
cause
1
and
cause
2
cannot
be
1
simultaneously.
Hence,
one
constraint
needs
to
be
added.
Copyright
Soha
Makady
2016
Example
Example (Contd)
Example (Contd)
Example (Contd)
Sample
congura+ons
and
contents
of
the
Free
window
are
given
below.
Example
(Contd)
What
causes
do
we
have?
C1
:
Purchase
CPU
1.
C2
:
Purchase
CPU
2.
C3
:
Purchase
CPU
3.
C4
:
Purchase
PR
1.
C5
:
Purchase
PR
2.
C6
:
Purchase
M
20.
C7
:
Purchase
M
23.
C8
:
Purchase
M
30.
Example (Contd)
What
eects
do
we
have?
The
applica+on
so#ware
calculates
and
displays
the
list
of
items
available
free
with
the
purchase
and
the
total
price.
For
simplicity,
we
ignore
the
price
related
cause
and
eect.
The
set
of
eects
in
terms
of
the
contents
of
the
Free
display
window
are
listed
below.
E
:
RAM
256.
E
:
RAM
512
and
PR
1.
E
:
RAM
1G
and
PR
2.
E
:
No
giveaway
with
this
item.
1
Example (Contd)
Let
us
try
to
generate
a
limited-entry
decision
table
for
the
above
cause-eect
graph.
Copyright
Soha
Makady
2016
Let
us
try
to
generate
a
decision
table
Copyright
Soha
Makady
2016
Required
Readings
References
Mathur,
Aditya
P.
Founda@ons
of
SoBware
Tes@ng,
2/e.
Pearson
Educa+on
India,
2008.