4. Black-box testing is a method of software testing that
examines the functionality of an application without
knowing into its internal structures or workings.
This method helps to find errors in the various categories like
• Incorrect or missing functions
• Interface errors
• Errors in data structures or external database access
• Behavior or performance errors
• Initialization and termination errors
Introduction:
5. Example:
This is a calculator that takes some input and gives some output. We don’t know
what’s going on inside. Others example are: an operating system like Windows, a
website like Google, a database like Oracle .
6. Advantages of Black Box Testing:
• Efficient when used on large systems.
• Tester can be non-technical.
• There is no need for the tester to have
detailed functional knowledge of system.
• Test cases can be designed as soon as the
functional specifications are complete.
7. Disadvantages of Black Box Testing:
• Test cases are challenging to design without
having clear functional specifications.
• It is difficult to identify tricky inputs if the test
cases are not developed based on specifications.
• It is difficult to identify all possible inputs in
limited testing time. As a result, writing test cases
may be slow and difficult.
• There are chances of having unidentified paths
during the testing process.
• There is a high probability of repeating tests
already performed by the programmer.
8. Techniques:
Equivalence Partitioning
• To reduce the number of test data
• To select the right test cases to cover all possible
scenarios
Boundary Value Analysis
It involves determination of boundaries for input
values and selecting values that are at the boundaries
9. Techniques:
Decision table testing
Decision tables, like flowcharts and if-then-else and
switch-case statements, associate conditions with
actions to perform
State Transition Testing:
State Transition Testing is a technique that is used to
test the different states of the system under test.
10. Techniques:
Error guessing
It is a test method in which test cases used to find
bugs in programs are established based on
experience.
Typical errors include:
divide by zero
null pointers,
invalid parameters.