# Black Box – BVT software testing

**Boundary Value software testing/analysis**

This technique says that most errors occur at boundaries. For example, if we have variable marks and the range of variable marks is from 1 to 100 then we can say that we should test them 100 times and one time for each value.

We will test that if marks are 1 then 1 is correctly entertained by our software or not?

We will test that if marks are 2 then 2 is correctly entertained by our software or not?

We will test that if marks are 3 then 3 is correctly entertained by our software or not? And so on for each value of marks.

## Video Lecture

**Problem:**

This is a very exhausting process and wastes a lot of time and budget if we test values of only one variable a hundred times.

**Solution: **

** The solution** to this problem is a simple boundary value testing.

**Simple Boundary value testing of one variable:**

Boundary value testing says that errors mostly occur at boundaries, so we should only test the values at boundaries.

For example, we can test the values at 5 different points like

Min |
Min+ |
Nominal |
Max- |
Max |

Here in case of marks, the range of marks is 1 to 100. So if we find these five values then;

Min |
Min+ |
Nominal |
Max- |
Max |

1 |
2 | 50 | 99 | 100 |

**Min: **

Min is the minimum value of the data range.

**Min+: **

Min+ is the minimum value +1 among the data range.

**Nominal:**

Nominal value can be any typical value that is far away from boundaries. For example, here we chose 50 as nominal but we can also choose 51, 52, 53, 49, 48 or any value that is typical value and far away from boundaries. As we see that 50 have a very large distance between 1 and 2. Similarly, 50 have a very large distance against 99 and 100. So 50 can be a nominal value.

**Max-: **

Max- is the Maximum value -1 among the data range.

**Max: **

Max is the maximum value of the data range.

**Test cases:**

We can generate 5 test cases from one variable marks as follows.

**Test case # 1:** To test 1

**Test case # 2: **To test 2

**Test case # 3:** To test 50

**Test case # 4:** To test 99

**Test case # 5:** To test 100.