Most web and mobile applications have fields somewhere in the application, and most fields have a limit to the values they will accept. Let’s say you have a field that is designed to accept a value between 1 and 1000. Do you need to write one thousand test cases for it? I’m sure everyone knows that you don’t, but which values do you select to test, and why? Many experienced testers, especially those who have any development experience, know that the highest risk of boundary condition failure lies at the edges of those boundaries.
When a field has boundary conditions, in that it only accepts specific values or a range of values, then the highest risk of failure is right at the boundary on either side of the range. For example, if the field accepts 1 – 1000, then the highest risk is actually at 1 and 1000, and numbers one digit higher or lower than those boundaries. As a tester, the best test cases to write would include the numbers -1, 0, 1, 1000, and 1001. The logic being that if the field accepts 1 and 1000, and gives proper error messages for 1001 and 0 then the chances are extremely high that it will accept the full range of valid values and properly reject all other invalid values.
You can easily divide your test cases into three areas: Invalid values at the lower end – Valid values – Invalid values at the upper end.
Such as this:
Invalid Lower: -2, -1, 0
Valid: 1 – 1000
Invalid Upper: 1001, 1002
In knowing this, a tester can greatly decrease the number of test cases necessary for all fields with boundaries, and select the values with the highest rate of failure for any application. Not only do you increase your chances of finding an error, but you decrease the amount of time needed for test case writing and execution and your overall risk.