软件测试实验1
Description of triangle problem:
Function triangle takes three integers a,b,c which are length of triangle sides; calculates whether the triangle is equilateral, isosceles, or scalene.
编写Triangle.java:
package lab01;
public class Triangle {
private int a,b,c;
public Triangle(int side1, int side2, int side3){
if(side1 > 0 && side2 > 0 && side3 > 0
&& side1 + side2 > side3 && side2 +side3 > side1 && side1 + side3 > side2){
a = side1;
b = side2;
c = side3;
}
else
a = b = c = 1;
}
public boolean isEquilatera(){
return (a == b && b == c);
}
public boolean isIsosceles(){
return (a == b || a == c || b == c);
}
public boolean isScalene(){
return !isEquilatera();
}
public static void main(){
Triangle tri = new Triangle(5,5,5);
System.out.println(tri.isEquilatera());
System.out.println(tri.isIsosceles());
System.out.println(tri.isScalene());
}
}
编写Triangle_test.java:
package lab01;
import static org.junit.Assert.*;
import org.junit.Before;
import org.junit.Test;
public class Triangle_test {
private Triangle tri;
@Before
public void setUp() throws Exception {
tri = new Triangle(5,5,5);
}
@Test
public void testIsEquilatera(){
assertTrue(tri.isEquilatera());
}
@Test
public void testIsIsosceles(){
assertTrue(tri.isIsosceles());
}
@Test
public void testIsScalene(){
assertFalse(tri.isScalene());
}
}
运行测试类,得到结果:

安装Eclemma,进行覆盖测试。结果如图,代码上的底色红色代表未执行,黄色代表条件没有完全执行,绿色代表已执行:

浙公网安备 33010602011771号