You are on page 1of 7

1 _________________ 3 __________________

___________________ ___________________
I0065 I0065

Software Testing Methods Testing Objectives


and strategies ___________________ ___________________
 Testing
___________________  Testing is a process of executing a program
with the intent of finding an error. ___________________
 White-box and Black ___________________  A good test is one that has a high probability of
finding an as-yet undiscovered error.
___________________

Box Testing
Software Testing Strategies ___________________  A successful test is one that uncovers an as-yet ___________________
___________________ ___________________
undiscovered error.
 Software Testing Steps

___________________ ___________________
___________________ ___________________
___________________ ___________________
___________________ ___________________
Software Testing Methods and Strategies * Property of STI
___________________ Software Testing Methods and Strategies * Property of STI
___________________
Page 1 of 25 Page 3 of 25

2 _________________ 4 __________________
___________________ ___________________
I0065 I0065

Software Testing Testing Principles


___________________ ___________________
 critical element of software quality assurance
and represents the ultimate review of ___________________  All tests should be traceable to customer
requirements. ___________________
___________________ ___________________
specification, design, and coding
 Tests should be planned long before testing
 series of test cases that are intended to begins.
“demolish” the software that has been built
are created ___________________  The Pareto principle applies to software ___________________
___________________ ___________________
testing.
 one step in the software engineering process
that could be viewed as destructive rather Testing should begin “in the small” and

___________________ ___________________

than constructive progress toward testing “in the large.”

requires that the developer discard

___________________ ___________________

 Exhausting testing is not possible.
preconceived notions of the “correctness” of
software just developed and overcome a
To be most effective, testing should be

___________________ ___________________
conflict of interest that occurs when errors are 

uncovered conducted by an independent third party.

___________________ ___________________
Software Testing Methods and Strategies * Property of STI
___________________ Software Testing Methods and Strategies * Property of STI
___________________
Page 2 of 25 Page 4 of 25
5 _________________ 7 __________________
___________________ ___________________
I0065 I0065

Testability White-box Testing


___________________ ___________________
 simply how easily a computer program can be
tested ___________________  Reasons in conducting white-box testing
___________________
 it pays to know what can be done to
streamline it
___________________  Logic errors and incorrect assumptions are
inversely proportional to the probability
that a program path will be executed.
___________________
 sometimes used to mean how adequately a ___________________  We often believe that a logical path is not
___________________
___________________ ___________________
particular set of tests will cover the product likely to be executed when, in fact, it may
be executed on a regular basis.
Set of characteristics that lead to testable
software
 Operability
___________________  Typographical errors are random.
___________________
 Observability

 Controllability ___________________ ___________________


___________________ ___________________
 Decomposability

 Simplicity

 Stability

 Understandability
___________________ ___________________
Software Testing Methods and Strategies * Property of STI
___________________ Software Testing Methods and Strategies * Property of STI
___________________
Page 5 of 25 Page 7 of 25

6 _________________ 8 __________________
___________________ ___________________
I0065 I0065

White-box Testing Basic-Path Testing


___________________ ___________________


sometimes called glass-box testing
uses the control structure of the procedural
___________________  white-box testing technique first proposed
by Tom McCabe ___________________
___________________ ___________________
design to derive test cases
 the software engineer can derive test cases
 enables the test case designer to derive a
that:

___________________ ___________________
logical complexity measure of a
1. guarantee that all independent paths
procedural design and use this measure as
within a module have been exercised at
least once a guide for defining a basis set of
2. exercise all logical decisions on their true
and false sides
___________________ execution paths
___________________
3. execute all loops at their boundaries and
within their operational bounds
4. exercise internal and data structures to
___________________ ___________________
assure their validity
___________________ ___________________
___________________ ___________________
___________________ ___________________
Software Testing Methods and Strategies * Property of STI
___________________ Software Testing Methods and Strategies * Property of STI
___________________
Page 6 of 25 Page 8 of 25
9 _________________ 11 _________________
___________________ ___________________
I0065 I0065

Characteristics Software
Black-box Testing
___________________ Testing
___________________
 focuses on the functional requirements of
the software ___________________  provides a road map for the software
developer, the quality assurance organization, ___________________
___________________ ___________________
and the customer
 enables the software engineer to derive
sets of input conditions that will fully
exercise all functional requirements for a  incorporate test planning, test case design,


program
not an alternative to white-box
___________________ test execution, and resultant data collection
and evaluation ___________________

techniques
complementary approach that is likely to ___________________  should be flexible enough to promote the
creativity and customization that are
___________________
___________________ ___________________
uncover a different class of errors than necessary to adequately test all large
white-box methods software-based systems
attempts to find errors in the following
___________________ ___________________

categories:  must be rigid enough to promote reasonable
planning and management tracking as the
 incorrect or missing functions

___________________ ___________________
project progresses
 interface errors

 errors in data structures or external


data base access
 performance errors ___________________ ___________________
___________________ ___________________
 initialization and termination errors

Software Testing Methods and Strategies * Property of STI Software Testing Methods and Strategies * Property of STI
Page 9 of 25 Page 11 of 25

10 ________________ 12 _________________
___________________ ___________________
I0065 I0065

Characteristics Software
Black-box Testing
___________________ Testing
___________________
Criteria in applying black-box techniques
___________________  Testing begins at the module level2 and
___________________
 test cases that reduce, by a count that is
greater than one, the number of additional
test cases that must be designed to achieve
___________________ works “outward” toward the integration
of the entire computer-based system. ___________________
reasonable testing
___________________  Different testing techniques are
appropriate at different points in time.
___________________
___________________ ___________________
 test cases that tell us something about the
presence or absence of classes of errors,
rather than errors associated only with the  Testing is conducted by the developer of
specific test at hand
___________________ the software and an independent test
group. ___________________
___________________  Testing and debugging are different
activities, but debugging must be
___________________
___________________ accommodated in any testing strategy.
___________________
___________________ ___________________
Software Testing Methods and Strategies * Property of STI
___________________ Software Testing Methods and Strategies * Property of STI
___________________
Page 10 of 25 Page 12 of 25
13 ________________ 15 _________________
___________________ ___________________
I0065 I0065

Verification and Validation Testing Strategy


___________________ ___________________
 Verification refers to the set of activities
that ensure that software correctly ___________________ ___________________
___________________ ___________________
implements a specific function.
System engineering S
Requirements R

___________________ ___________________
 Validation refers to a different set of Design D
activities that ensure that the software Code C
U Unit test
that has been built is traceable to

___________________ ___________________
I Integration test
customer requirements. V Validation test
ST System test

 Verification: “Are we building the product


right?” ___________________ ___________________
___________________ ___________________
 Validation: “Are we building the right
product?”

___________________ ___________________
___________________ ___________________
Software Testing Methods and Strategies * Property of STI
___________________ Software Testing Methods and Strategies * Property of STI
___________________
Page 13 of 25 Page 15 of 25

14 ________________ 16 _________________
___________________ ___________________
I0065 I0065

Verification and Validation Software Testing


___________________ Strategy ___________________
___________________ ___________________
___________________ ___________________
___________________ ___________________
high-order
requirements tests

design integration test

___________________ code unit


___________________
___________________ ___________________
test

testing "direction"

___________________ ___________________
___________________ ___________________
___________________ ___________________
Software Testing Methods and Strategies * Property of STI
___________________ Software Testing Methods and Strategies * Property of STI
___________________
Page 14 of 25 Page 16 of 25
17 ________________ 19 _________________
___________________ ___________________
I0065 I0065

Strategic Issues Unit Test Considerations


___________________ ___________________
 Specify product requirements in a quantifiable
manner long before testing commences. ___________________ ___________________


State testing objectives explicitly.
Understand the users of the software and ___________________ Module ___________________
___________________ ___________________
develop a profile for each user category. interface
 Develop a testing plan that emphasizes “rapid local data structures
cycle testing.” boundary conditions
 Build “robust” software that is designed to test
itself. ___________________ independent paths
error handling paths
___________________
 Use effective formal technique reviews as a
filter prior to testing. ___________________ ___________________
___________________ ___________________
 Conduct formal technical reviews to assess the
test strategy and test cases themselves.
 Develop a continuous improvement approach
for the testing process.
___________________ test
cases ___________________
___________________ ___________________
Software Testing Methods and Strategies * Property of STI
___________________ Software Testing Methods and Strategies * Property of STI
___________________
Page 17 of 25 Page 19 of 25

18 ________________ 20 _________________
___________________ ___________________
I0065 I0065

Unit Testing Checklist for Interface Test


___________________ ___________________
 focuses verification effort on the smallest unit
of software design — the module ___________________  Number of input parameters equal to number
arguments ___________________
 normally white-box oriented, and the step can
be conducted in parallel for multiple modules
___________________ 


Parameter and argument attributes match
Parameter and argument units systems match ___________________
 The relative complexity of tests and uncovered ___________________  Number of arguments transmitted to called
modules equal to number of parameters
Attributes or arguments transmitted to called
___________________
___________________ ___________________
errors is limited by the constrained scope 

established for unit testing. modules equal to attributes of parameters


 Unit system of arguments transmitted to called

___________________ 
modules equal to unit system of parameters
Number of attributes and order of arguments ___________________
___________________ ___________________
to built-in functions correct
 Any references to parameters not associated
with current point of entry

___________________ 


Input-only arguments altered
Global variable definitions consistent across
___________________
___________________ 
modules
Constraints passed as arguments ___________________
Software Testing Methods and Strategies * Property of STI
___________________ Software Testing Methods and Strategies * Property of STI
___________________
Page 18 of 25 Page 20 of 25
21 ________________ 23 _________________
___________________ ___________________
I0065 I0065

Integration Testing Integration Testing


___________________ ___________________
 systematic technique for constructing the
program structure while conducting tests to ___________________ ___________________
___________________ ___________________
uncover errors associated with interfacing
Mc
 its objective is to take unit tested modules and
build a program structure that has been
dictated by design
___________________ ___________________
Ma Mb

Top-Down Integration

___________________ ___________________
D1 D2 D2

 incremental approach to construction of


program structure

Bottom-Up Integration ___________________ Cluster 1


Cluster 3
___________________
___________________ ___________________
 begins construction and testing with atomic
modules (i.e., modules at the lowest levels in Cluster 2
the program structure)

___________________ Bottom-Up Integration ___________________


___________________ ___________________
Software Testing Methods and Strategies * Property of STI
___________________ Software Testing Methods and Strategies * Property of STI
___________________
Page 21 of 25 Page 23 of 25

22 ________________ 24 _________________
___________________ ___________________
I0065 I0065

Integration Testing Validation Testing


___________________ ___________________
M1 ___________________  succeeds when software functions in a manner
that can be reasonably expected by the ___________________
___________________ ___________________
customer
 can be achieved through a series of black-box
tests that demonstrate conformity with

M2 M3 M4 ___________________ requirements

Alpha Testing
___________________
___________________  conducted at the developer’s site by a
customer
___________________
M5 M6 M7
___________________ Beta Testing ___________________
___________________ ___________________
 conducted at one or more customer sites by
the end user(s) of the software

___________________ ___________________
M8

Top-Down Integration
___________________ ___________________
Software Testing Methods and Strategies * Property of STI
___________________ Software Testing Methods and Strategies * Property of STI
___________________
Page 22 of 25 Page 24 of 25
25 ________________
___________________
I0065

System Testing
___________________
 series of different tests whose primary purpose
is to fully exercise the computer-based system ___________________
Recovery Testing
 forces the software to fail in a variety of ways
___________________
and verifies that recovery is properly
performed ___________________
___________________
Security Testing
 attempts to verify that protection mechanisms
built into a system will in fact protect it from
improper penetration
Stress Testing ___________________
___________________
 executes a system in a manner that demands
resources in abnormal quantity, frequency, or
volume
Performance Testing
 designed to test run-time performance of
software within the context of an integrated
___________________
system
___________________
Software Testing Methods and Strategies * Property of STI
___________________
Page 25 of 25

You might also like