BlackBoxTesting

BlackBoxTesting - Black Box Testing Sources: Code Complete,...

Info iconThis preview shows pages 1–8. Sign up to view the full content.

View Full Document Right Arrow Icon
Black Box Testing Sources: Code Complete, 2 nd Ed., Steve McConnell Software Engineering, 5 th Ed., Roger Pressman Testing Computer Software, 2 nd Ed., Cem Kaner, et. Al.
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Black Box Testing Testing software against a specification of its external behavior without knowledge of internal implementation details Can be applied to software “units” (e.g., classes) or to entire programs External behavior is defined in API docs, Functional specs, Requirements specs, etc. Because black box testing purposely disregards the program's control structure, attention is focused primarily on the information domain (i.e., data that goes in, data that comes out) The Goal: Derive sets of input conditions (test cases) that fully exercise the external functionality
Background image of page 2
Black Box Testing Black box testing tends to find different kinds of errors than white box testing Missing functions Usability problems Performance problems Concurrency and timing errors Initialization and termination errors Etc. Unlike white box testing, black box testing tends to be applied later in the development process Black Box Testing Example #1
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
The Information Domain: inputs and outputs Inputs Individual input values Try many different values for each individual input Combinations of inputs Individual inputs are not independent from each other Programs process multiple input values together, not just one at a time Try many different combinations of inputs in order to achieve good coverage of the input domain Vary more than one input at a time to more completely cover the input domain
Background image of page 4
The Information Domain: inputs and outputs Inputs (continued) Ordering and Timing of inputs In addition to the particular combination of input values chosen, the ordering and timing of the inputs can also make a difference Outputs In addition to covering the input domain, make sure your tests thoroughly cover the output domain What are the legal output values? Is it possible to select inputs that produce invalid outputs?
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
The Information Domain: inputs and outputs Defining the input domain Boolean value T or F Numeric value in a particular range 99 <= N <= 99 Integer, Floating point One of a fixed set of enumerated values {Jan, Feb, Mar, …} {Visa, MasterCard, Discover, …} Formatted strings Phone numbers File names URLs Credit card numbers Regular expressions
Background image of page 6
Equivalence Partitioning Consider all of the possible values for a single input (i.e., the input's domain) Frequently the domain is so large that you can't test all possible values You have to select a relatively small number of values to actually test Which values should you choose?
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 8
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 43

BlackBoxTesting - Black Box Testing Sources: Code Complete,...

This preview shows document pages 1 - 8. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online