junit4实验报告

一:题目简介

测试一个加、减、乘、除。

二:源码的github链接

https://github.com/wangyuefang/test/blob/master/daiceshilei.md

https://github.com/wangyuefang/test/blob/master/ceshilei.md

三:所设计的模块测试用例、测试结果截图

  1. import java.util.Arrays;  
  2. import java.util.Collection;  
  3.   
  4. import org.junit.Assert;  
  5. import org.junit.Test;  
  6. import org.junit.runner.RunWith;  
  7. import org.junit.runners.Parameterized;  
  8. import org.junit.runners.Parameterized.Parameters;  
  9.   
  10. @RunWith(Parameterized.class)  
  11. public class CalculatorTest2{  
  12.   
  13.     private Calculator cal = new Calculator();  
  14.     private int param;  
  15.     private int result;  
  16.   
  17.     //构造函数,对变量进行初始化  
  18.     //定义一个待测试的类,并且定义两个变量,一个用于存放参数,一个用于存放期待的结果。  
  19.     public CalculatorTest2(int param, int result) {  
  20.            this.param = param;  
  21.            this.result = result;  
  22.     }  
  23.       
  24.     @Parameters  
  25.     public static Collection data(){  
  26.         return Arrays.asList(new Object[][]{  
  27.             {2, 4},  
  28.             {0, 0},  
  29.             {-3, 9},  
  30.       });  
  31.     }  
  32.   
  33.     @Test  
  34.     public void squareTest() {  
  35.         int temp = cal.square(param);  
  36.         Assert.assertEquals(result, temp);  
  37.     }  
  38. }

 

 

 

 

四:心得体会

       测试通过了,CalculatorTest2类里的parameter是每次的测试输入,result就是测试的结果。所有的测试输入和期望结果都在@Parameters标注的data函数的返回的Collection集合里,2的期望得到的平方结果值是4,0期望得到0,-3期望得到9。

       把测试代码提交给JUnit框架后,框架如何来运行代码呢?答案就是——Runner。在JUnit中有很多个 Runner,他们负责调用测试代码,每一个Runner都有各自的特殊功能,要根据需要选择不同的Runner来运行测试代码。JUnit中有一个默认Runner,如果没有指定,那么系统自动使用默认 Runner来运行你的代码。这里参数化测试就没有再用默认的Runner了。

       我从中学到了好多,但其中还有好多不足,还需要好好的改进。

 

posted on 2015-04-29 22:07  wangyuefang  阅读(644)  评论(3编辑  收藏  举报

导航