本次实验的主要目的是使用Junit和Eclemma进行单元测试和覆盖测试,被测试程序是一个简单的三角形函数,实验的具体步骤如下:
1.首先是相关环境的搭建:
(1).在Eclipse中安装Junit:
右键项目,找到Build path,选择Add Library...
点击并选择Junit4即可完成相关jar包的导入。(2).Eclemma的安装:
选择Help-Eclipse Marketplace-搜索EclEmma:
会出现以下结果:
点击进行安装即可,安装完成后,会自动重启Eclipse。至此环境搭建的准备工作已经全部完成,下面开始进行代码部分的工作。2.三角形形状测试代码的编写:
(1).首先编写三角形类:
该类用来判断对于给定的三角形的三条边,该三角形是等边三角形还是等腰三角形或者是其他类型的三角形(前提是能组成一个三角形),代码如下:1 package TestTr; 2 3 public class Triangle { 4 // 定义三角形的三边 5 protected int lborderA = 0; 6 protected int lborderB = 0; 7 protected int lborderC = 0; 8 // 构造函数 9 public Triangle(int lborderA, int lborderB, int lborderC) {10 this.lborderA = lborderA;11 this.lborderB = lborderB;12 this.lborderC = lborderC;13 }14 15 public String isType(Triangle triangle) {16 String strType = "";17 //判断是否为三角形18 if ((triangle.lborderA = triangle.lborderB + triangle.lborderC)19 || (triangle.lborderB = triangle.lborderA + triangle.lborderC)20 || (triangle.lborderC = triangle.lborderA + triangle.lborderB)) {21 22 strType = "不是三角形";23 }24 else{25 // 判断是否等边是三角形26 if ((triangle.lborderA == triangle.lborderB)27 && (triangle.lborderB == triangle.lborderC)) {28 strType = "等边三角形";29 }30 // 判断是否是不等边三角形31 else if ((triangle.lborderA != triangle.lborderB)32 && (triangle.lborderB != triangle.lborderC)33 && (triangle.lborderA != triangle.lborderC))34 strType = "不规则三角形";35 else {36 strType = "等腰三角形";37 }38 39 }40 return strType;41 }42 }
(2).然后进行测试函数的编写:
1 package TestTr; 2 3 import org.junit.Test; 4 import static org.junit.Assert.*; 5 import org.junit.Before; 6 7 public class TestTriangle 8 { 9 public Triangle t;10 @Before11 public void create()12 {13 t = new Triangle(0, 0, 0); 14 }15 16 @Test17 public void Test()18 {19 t = new Triangle(1,1,1);20 assertEquals("等边三角形",t.isType(t));21 t = new Triangle(3,4,5);22 assertEquals("不规则三角形",t.isType(t));23 t = new Triangle(3,3,4);24 assertEquals("等腰三角形",t.isType(t));25 t = new Triangle(1,5,7);26 assertEquals("不是三角形",t.isType(t));27 }28 }
3.测试结果:
Junit测试结果:

Eclemma覆盖率测试:

至此,此次实验内容完成。













