# Difference between equivalence and boundary value analysis?

#### Subbu

• Feb 20th, 2007

Equivalence Partitioning:

The idea behind the technique is to divide or partition a set of test conditions into groups or sets that can be considered the same or equivalent, hence ‘equivalence partitioning’. Equivalence partitions are also known as equivalence classes, the two terms mean exactly the same thing.

Boundary value analysis:
It is based on testing on and around the boundaries between partitions. If you have done “range checking”, you were probably using the boundary value analysis technique, even if you weren’t aware of it. Note that we have both valid boundaries (in the valid partitions) and invalid boundaries (in the invalid partitions).

#### kalyan M

• Feb 28th, 2007

Hi....

We take an example for both.......

both equivalence and boundary value testing are based on how we give inputs for testing an application....

for example we take a month is a input column in a application...

Equivalence Partitioning testing is

.... -2 -1  0 1 .............. 12 13  14  15 .....
--------------|-------------------|---------------------
invalid partition 1     valid partition    invalid partition 2

This valid range is called a partition. In this example there are two further partitions of invalid ranges. The first invalid partition would be <= 0 and the second invalid partition would be >= 13.

In boundary value testing is
if (month > 0 && month < 13)
we check only boundary values...

#### melosha Profile Answers by melosha

• Jan 31st, 2008

Equivalence Partitioning: (EQP)

It is a Black Box Testing Technique that divides the input domain into classes of data from which test cases can be derived.

For example:

If we want to test a field which accepts values from 1 to 9, we will write test cases with the following test data.
1. Test case with test data less than 1
2. Test case with test data greater than 9
3. Test case with test data between 1 and 9

Boundary Value Analysis: (BVA)
This is also a Black Box Testing Technique which concentrates on the Corner cases or the boundaries of the input domain rather than its center

For example If we want to test a field from 1 to 9 boundary values will be 0,1,2,and 8,9,10

The left hand value is called the lower boundary ie 1 here in this example and the Right side value 9 is called the Upper boundary and hence the selection of values is
a. Upper boundaries +1,-1
b. Lower boundaries +1,-1

• Jul 7th, 2008

The main difference between EP and BVA is that EP determines the number of test cases to be generated for a given scenario where as BVA will determine the effectivenss of those generated test cases.

Equivalence partitioning : Equivalence Partitioning determines the number of test cases for a given scenario.
Equivalence partitioning is a black box testing technique with the following goal:
1.To reduce the number of test cases to a necessary minimum.
2.To select the right test cases to cover all possible scenarios.

EP is applied to the inputs of a tested component. The equivalence partitions are usually derived from the specification of the component's behaviour. An input has certain ranges which are valid and other ranges which are invalid. This may be best explained at the following example of a function which has the pass parameter "month" of a date. The valid range for the month is 1 to 12, standing for January to December. This valid range is called a partition. In this example there are two further partitions of invalid ranges. The first invalid partition would be <= 0 and the second invalid partition would be >= 13.

. ... -2 -1 0                  1 .............. 12                                     13 14 15 .....
invalid partition 1        valid partition                           invalid partition 2

The testing theory related to equivalence partitioning says that only one test case of each partition is needed to evaluate the behaviour of the program for the related partition. In other words it is sufficient to select one test case out of each partition to check the behaviour of the program.

To use more or even all test cases of a partition will not find new faults in the program. The values within one partition are considered to be "equivalent". Thus the number of test cases can be reduced considerably.

Equivalence partitioning is no stand alone method to determine test cases. It has to be supplemented by boundary value analysis. Having determined the partitions of possible inputs the method of boundary value analysis has to be applied to select the most effective test cases out of these partitions.

Boundary Value Analysis :

Boundary Value Analysis determines the effectiveness of test cases for a given scenario. To set up boundary value analysis test cases the tester first has to determine which boundaries are at the interface of a software component. This has to be done by applying the equivalence partitioning technique.Boundary value analysis and equivalence partitioning are inevitably linked together.

For the example of the month a date would have the following partitions: .
.. -2 -1 0                    1 .............. 12             13 14 15 .....
--invalid partition 1    valid partition              invalid partition 2

By applying boundary value analysis we can select a test case at each side of the boundary between two partitions . In the above example this would be 0 and 1 for the lower boundary as well as 12 and 13 for the upper boundary. Each of these pairs consists of a "clean" and a "dirty" test case. A "clean" test case should give a valid operation result of the program. A "dirty" test case should lead to a correct and specified input error treatment such as the limiting of values, the usage of a substitute value, or in case of a program with a user interface, it has to lead to warning and request to enter correct data.
The boundary value analysis can have 6 test cases: n, n-1, and n+1 for the upper limit; and n, n-1, and n+1 for the lower limit.

#### preethi.gollamandala Profile Answers by preethi.gollamandala

• Aug 11th, 2009

Eualance class is belongs to the type of the field where as Boundary value belongs to teh size/boundary of field text value

#### kurtz182 Profile Answers by kurtz182 Questions by kurtz182

• Dec 3rd, 2009

Equivalence class analysis:  The process of discovering the same attributes across testable items in order to minimize the number of items to be tested.  For example, a requirement for a particular input box states that it can handle integer values from 1 through 100.  Since all of these values are considered to be in the same equivalence class of integers, we need not author 100 test cases for each one.  Instead, we will select only a few of these integers to test.

Boundary value analysis:  The process of testing the boundary on a particular range of testable items.  Using the previous input box example, since the range of testable items is 1 through 100, we will test only the lower and upper boundary values as well as the values that are plus and minus 1.

EXAMPLE:  Input box accepts integer values 1 through 100.
1) Equivalence class analysis tells us that we need not test all of these integers because they all share common attributes.
2) Boundary value analysis tells us we should author and execute tests with the following integer values:  0; 1; 2 (lower limit) and 99, 100, 101 (upper limit).

#### harsha

• Feb 3rd, 2012

BVA:To check size or range of i/p field.
EQA:To check type of i/p or o/p field.

#### srikant

• Sep 18th, 2012

Equivalence Partioning:-
i) Equivalence Partition determines the number of test cases to be generated for a given scenario.
ii) It has to be supplemented by Boundary Value Analysis.
iii) Equivalence Partitioning is a black box testing technique with the following goal:
1.To reduces the number of test cases to a necessary minimum.
2. To select the right test cases to cover all possible scenarios.
iv) Equivalence Partition is nothing but to check the valid and invalid data of the field.

Boundary Value Analysis:-
i) Boundary value analysis will determine the effectiveness of those generated test cases.
ii) This has to be done by applying the equivalence partitioning technique.
iii) Boundary value analysis only check the boundary values and "+" or "-" of that values.
iv) Boundary value analysis is nothing but to check the max and min length of the field.

#### tanu

• Dec 3rd, 2014

Expected should be relates to clients requirement where as actual result relates to Application under test, when we execute script actual should match with expected then it is passed , or else failed test (defect)

#### tejal

• Mar 26th, 2016

Equivalence Testing
i) In equivalence class testing the input domain of the program is partitioned into classes
ii) The no. of test cases generated are equal to the no. of valid and invalid classes
iii) The test cases are evaluated without considering single fault assumption of reliability
iv) It is supplemented by boundary value analysis.
v) It determines the no. of test cases generated for a program.
vi) It is done to evaluate whether an input is correct or not such that no two invalid inputs mask each other.
vii) This is evaluated within the area of the feild under consideration

Boundary value analysis
i) Here the test cases are generated using boundary values.
ii) No.of test cases =4n+1 where n is the no. of variables in the program under test.
iii) Here single fault assumption of reliability is applied.
iv) It is the basic technique for black box testing based on the concept that faults usually occur near the boundary of conditions.
v) It determines the effectiveness of the test cases.
vi) It determines the range of the outputs for specified inputs
vii) It is operated on boundary of the field.