Design the test cases and test the program of Quadratic Equation problem by using Boundary Value Analysis

A quadratic equation is an equation which must be in the form of ax2+bx+c where a can’t be 0. we use Quadratic formula to find roots and check whether the roots are real or imaginary.

quadratic formula 1

This Quadratic formula is applied only when b2– 4ac >= 0.
such that,
If b2– 4ac > 0 , means the eqn. has more than one real roots
if b2– 4ac = 0 , represent equal or single root
if b2– 4ac <0, represents imaginary root
Lastly, if a is 0, then the equation would not be considered as a quadratic equation.

So, a quadratic equation can have [ Real, Equal, Imaginary, not quadratic ]

We are supposing interval [0,10] where our input values will fall in between this interval and we will create test cases using Boundary Value Analysis accordingly.

Program:

#include<conio.h>
#include<stdio.h>
#include<math.h>
void main()
{
float a,b,c,result;
printf(" ax^2 + bx + c, \n enter the values of a, b and c : = ");
scanf("%f %f %f", &a,&b,&c);

result = (b*b)- (4*a*c);
if(a==0)
printf("not quadratic");
else if(result>0)
{
result= sqrt(result);
printf("Real roots are, %f,%f \n",(-b-result)/(2*a),(-b+result)/(2*a));
}
else if(result==0)
{
result= sqrt(result);
printf("equal root, %f,%f \n",(-b)/(2*a),(-b)/(2*a));
}
else
{
printf("Imaginary root");
}

getch();
}

 

 

Testing the Program


Real roots:

  real 1

Equal roots:

equal roots 1

Not Quadratic

not quadratic 1

Imaginary :

imaginary 1

In Boundary Value Analysis, there will be 4N+1 test cases which means 4*3+1 = 13 test cases will be generated 

Test IDabcExpected OutputProgram OutputTested Outcome
1055Not QuadraticNot QuadraticPass
2155RealRealPass
3955ImaginaryImaginaryPass
41055ImaginaryImaginaryPass
5505ImaginaryImaginaryPass
6515ImaginaryImaginaryPass
7595ImaginaryImaginaryPass
85105EqualEqualPass
9550RealRealPass
10551RealRealPass
11559ImaginaryImaginaryPass
125510ImaginaryImaginaryPass
13555ImaginaryImaginaryPass

Leave a Reply