Software Testing Unit Integration Functional System Acceptance
Black-box testing uses external specifications and requirements to derive test cases without knowledge of internal structure. It can test at all levels from unit to acceptance. While it finds unimplemented parts, not all paths may be tested. Common techniques include decision tables, pairwise testing, state transition tables, equivalence partitioning, and boundary value analysis. Decision tables specify conditions and corresponding actions. Pairwise testing tests all pairs of input parameters faster than exhaustive testing. State transition tables show the next state based on current state and inputs. Equivalence partitioning divides inputs into classes to reduce test cases, while boundary value analysis uses representative values on partition edges.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
100%(1)100% found this document useful (1 vote)
138 views6 pages
Software Testing Unit Integration Functional System Acceptance
Black-box testing uses external specifications and requirements to derive test cases without knowledge of internal structure. It can test at all levels from unit to acceptance. While it finds unimplemented parts, not all paths may be tested. Common techniques include decision tables, pairwise testing, state transition tables, equivalence partitioning, and boundary value analysis. Decision tables specify conditions and corresponding actions. Pairwise testing tests all pairs of input parameters faster than exhaustive testing. State transition tables show the next state based on current state and inputs. Equivalence partitioning divides inputs into classes to reduce test cases, while boundary value analysis uses representative values on partition edges.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 6
Black-box testing
Black-box testing uses external descriptions of the
software, including specifications, requirements, and design to derive test cases. These tests can be functional or non-functional, though usually functional. The test designer selects valid and invalid inputs and determines the correct output. There is no knowledge of the test object's internal structure. This method of test design is applicable to all levels of software testing: unit, integration, functional, system and acceptance. The higher the level, and hence the bigger and more complex the box, the more one is forced to use black box testing to simplify. While this method can uncover unimplemented parts of the specification, one cannot be sure that all existent paths are tested.
Test design techniques
Typical black box test design techniques include: Decision table testing Pairwise testing State transition tables Equivalence partitioning Boundary value analysis
A decision table is typically divided into four
quadrants, as shown below. The four quadrants Conditions,Condition alternatives Actions,Action entries Each decision corresponds to a variable, relation or predicate whose possible values are listed among the condition alternatives. Each action is a procedure or operation to perform, and the entries specify whether (or in what order) the action is to be performed for the set of condition alternatives the entry corresponds to. Many decision tables include in their condition alternatives the don't care symbol, a hyphen. Using don't cares can simplify decision tables, especially when a given condition has little influence on the actions to be performed. In some cases, entire conditions thought to be important initially are found to be irrelevant when none of the conditions influence which actions are performed.
All-pairs testing or pairwise testing is a
combinatorial software testing method that, for each pair of input parameters to a system (typically, a software algorithm), tests all possible discrete combinations of those parameters. Using carefully chosen test vectors, this can be done much faster than an exhaustive search of all combinations of all parameters, by "parallelizing" the tests of parameter pairs. The number of tests is typically O(nm), where n and m are the number of possibilities for each of the two parameters with the most choices.
In automata theory and sequential logic, a state
transition table is a table showing what state (or states in the case of a nondeterministic finite automaton) a finite semiautomaton or finite state machine will move to, based on the current state and other inputs. A state table is essentially a truth table in which some of the inputs are the current state, and the outputs include the next state, along with other outputs. A state table is one of many ways to specify a state machine, other ways being a state diagram, and a characteristic equation.
Equivalence partitioning is a software testing technique
that divides the input data of a software unit into partitions of data from which test cases can be derived. In principle, test cases are designed to cover each partition at least once. This technique tries to define test cases that uncover classes of errors, thereby reducing the total number of test cases that must be developed. Boundary value analysis is a software testing technique in which tests are designed to include representatives of boundary values. Values on the edge of an equivalence partition or at the smallest value on either side of an edge. The values could be either input or output ranges of a software component. Since these boundaries are common locations for errors that result in software faults they are frequently exercised in test cases.