You are on page 1of 6

BLACK BOX TESTING TECHNIQUE

These are scientific and time-tested techniques that will help us get maximum coverage in
minimum test cases.

1)EQUIVALENCE CLASS PARTIONING

➢ Equivalence partitioning is also known as Equivalence class partitioning.

➢ Equivalence partitioning is a black-box testing techniquethat applies to all levels of testing.

➢ It divides the input data into different equivalence data classes and will test with one input
value from each class.

The idea behind the technique is to divide a set of test conditions into groups or sets that can be
considered as same. Partitioning usually happens for test objects, which includes inputs,
outputs, internal values, time-related values, and for interface parameters. It works on certain
assumptions:

The system will handle all the test input variations within a partition in the same way.
Each value must belong to one and only one equivalence partition
If one of the input condition passes, then all other input conditions within the partition
will pass and if one of the input conditions fails, then all other input conditions within
the partition will fail as well
By applying this technique, we have significantly reduced our test cases, but yet the
coverage remains high.
The partitions can be further divided into sub-partitions if required Consider that you are
filling an online application form for a gym membership.Most of the gyms have age criteria
of 16-60, where you can independently get the membership without any supervision
needed.If you look at below membership form, you will need to fill age first. After that,
depending on whether you are between 16-60, you can go further. Otherwise, you will get a
message that you cannot get a membership.
If we have to test this age field, we need to test the values between 16-60, and values which are
less than 16, and some values which are more than 60. It is easy to figure out, but what is not
very evident is how many combinations we need to test

• <16 has 15 combinations from 0-15, and if you test negative values, then some more
combination can be added
• 16-60 has 45 combinations
• >60 has 40 combinations (if you only take till 100)

The First step in Equivalence partitioning is to divide (partition) the input values into sets of valid
and invalid partitions.

Valid Partitions are values that should be accepted by the component or system under test. This
partition is called "Valid Equivalence Partition."

Invalid Partitions are values that should be rejected by the component or system under test. This
partition is called "Invalid Equivalence Partition."

The premise of this technique works on the assumption that all values within the partition will
behave the same way. So, all values from 16-60 will behave the same way. The same goes for
any value less than 16 and values greater than 60. As such, we only test 1 condition within each
partition and assume that if it works/doesn't work, the rest of the condition will behave the
same way.
Our Test conditions in Such case could be:

• Enter Age = 5
• Enter Age = 20
• Enter Age = 65
2)BOUNDARY VALUE ANALYSIS

➢ The basis of Boundary Value Analysis (BVA) is testing the boundaries at partitions.
➢ BVA is an extension ofequivalence partitioning.
➢ Boundary value analysis can perform at alltest levels, and its primarily used for a range of
numbers, dates, and time.
➢ However, this is useable only when the partition is ordered, consisting of numeric or
sequential data. The minimum and maximum values of a partition are its boundary values.
We will refer to the same example of gym form (Refer to our article on Equivalence Partitioning)
where we need to enter Age.

The first step of Boundary value analysis is to create Equivalence Partitioning

Now Concentrate on the Valid Partition, which ranges from 16-60.

15 16 17 59 60 61

(Boundary -1)(Boundary +1) (Boundary -1) (Boundary +1)

BoundaryBoundary

Valid Boundary Conditions


• Identify Exact Boundary Value of this partition Class - which is 16 and 60.
• Get the Boundary value which is one less than the exact Boundary - which is 15 and 59.
• Get the Boundary Value which is one more than the precise Boundary - which is 17 and
61. If we combine them all, we will get below combinations for Boundary Value for the
Age Criteria.
Valid Boundary Conditions: Age = 16, 17, 59, 60

Invalid Boundary Conditions: Age = 15 61,

It's straightforward to see that valid boundary conditions fall under Valid partition class, and
invalid boundary conditions fall under Invalid partition class.

Decision table testing

Experienced Based Technique


When applying experience-based test techniques, the test cases are derived from the tester’s
skill and intuition, and their experience with similar applications and technologies. These
techniques can be helpful in identifying tests that were not easily identified by other more
systematic techniques. Depending on the tester’s approach and experience, these techniques
may achieve widely varying degrees of coverage and effectiveness. Coverage can be
difficult to assess and may not be measurable with these techniques.
Commonly used experience-based techniques are discussed in the following sections.

Error Guessing
Error guessing is a technique used to anticipate the occurrence of errors, defects, and
failures, based on the tester’s knowledge, including:
 How the application has worked in the past
 What kind of errors tend to be made
 Failures that have occurred in other applications
A methodical approach to the error guessing technique is to create a list of possible errors,
defects, and failures, and design tests that will expose those failures and the defects that
caused them. These error, defect, failure lists can be built based on experience, defect and
failure data, or from common knowledge about why software fails.

Exploratory Testing
In exploratory testing, informal (not pre-defined) tests are designed, executed, logged,
and evaluated dynamically during test execution. The test results are used to learn more
about the component or system, and to create tests for the areas that may need more
testing.
Exploratory testing is sometimes conducted using session-based testing to structure the
activity. In session-based testing, exploratory testing is conducted within a defined time-
box, and the tester uses a test charter containing test objectives to guide the testing. The
tester may use test session sheets to document the steps followed and the discoveries made.
Exploratory testing is most useful when there are few or inadequate specifications or
significant time pressure on testing. Exploratory testing is also useful to complement
other more formal testing techniques.
Exploratory testing is strongly associated with reactive test strategies (see section 5.2.2).
Exploratory testing can incorporate the use of other black-box, white-box, and experience-
based techniques.

Checklist-based Testing
In checklist-based testing, testers design, implement, and execute tests to cover test
conditions found in a checklist. As part of analysis, testers create a new checklist or expand
an existing checklist, but testers may also use an existing checklist without modification.
Such checklists can be built based on experience, knowledge about what is important for
the user, or an understanding of why and how software fails.
Checklists can be created to support various test types, including functional and non-
functional testing. In the absence of detailed test cases, checklist-based testing can provide
guidelines and a degree of consistency. As these are high-level lists, some variability in the
actual testing is likely to occur, resulting in potentially greater coverage but less
repeatability.

You might also like