Boundary Value Analysis is a software testing technique for locating defects in programs. It involves checking the boundary conditions of the input values of test data (those corresponding to the minimum and maximum values) with respect to some properties being tested. This article enlists some tips on how you can use BVA effectively during testing, especially using spreadsheet automation.
BVA is best used when the input values to be checked are in a particular range. The minimum and maximum values at any midway point within this range can act as boundary points.
Any intermediate value within this range will not be tested by BVA but will instead be tested for conformance to some other (often broader) specification. Hence it is best that you choose the boundary values after some thought. You can then use these values in a worksheet-based ‘ticking-box’ test to run through all of the related data points.
Boundary Value Analysis is one of the 4 main methods and techniques used in the testing process, namely:
- Unit testing
- Integration testing
- System testing
- Acceptance testing
BVA is also used to evaluate how efficient an algorithm or program is at processing all possible inputs by testing it against a range of input values and thereby determining the point at which it no longer functions correctly.
The technique can be applied both for positive (or affirmative) boundary checking as well as negative (or non-affirmative) boundary checking. A positively specified BVA would entail checking the test data for values that fall within a particular range using some pre-defined set of values, whereas, for a negatively specified BVA, we check the test data for any value that falls outside this preset range.
Boundary Value Analysis Belongs to which testing method?
Boundary Value Analysis belongs to the general method of software testing. It is a type of black-box testing. A BVA test looks for input values that fall outside the acceptable range of the program or algorithm when it processes them.
This technique can also be used to evaluate the efficiency and accuracy of programs since it tests these algorithms against a wide variety of possible inputs. For example, an algorithm that calculates income tax based on some pre-defined formula could be tested using lots of different incomes through boundary value analysis in order to establish whether it has any bugs or not (i.e., produces results that don’t conform to specified specifications). We will now look at how we can best use spreadsheet automation during BVA testing.