JUnit使用
1、测试方法必须使用@Test修饰
2、测试方法必须使用public进行修饰,不能有任何参数
3、新建一个源代码目录来存放我们的测试方法
4、测试类的包应该和被检测类一列
5、测试单元中的每个方法可以独立测试、测试方法间不能有任何的依赖
记住:测试用例不是用来证明你是对的,而是证明你没有错,只是用来证明达到预期的效果。
下面我们来写一个例子:
基本格局,可见,我创建一个专门的目录存放测试类,当然这只是演示。
Math.java中代码只有一个加法代码:
package com.yangshunfan.JUnit;
public class Math {
public int add(int a , int b){
return a + b;
}
}
MathTest.java代码:
package com.yangshunfan.JUnit;
import static org.junit.Assert.*;
import java.text.Collator;
import org.junit.Test;
import com.yangshunfan.JUnit.Math;
public class MathTest {
@Test
public void add() {
assertEquals(4, new Math().add(1,3));
}
}
测试代码用到了断言方法,下面是我从网上找到的所有的断言方法。在本示例的断言方法的作用是验证自己的预测是否正确,其中“4”代表的是程序员的预测值,
“new Math().add(1,3)”是被测试的值.
现在让我们来看看运行结果:
绿色的是运行成功的.
测试结果
测试结果有三种,上面可以看到的是正确的结果.可见还有Failure,error的情况出现.
1.Failure一般有单元测试使用的断言方法判断失败所引起的,这表示测试点发现了问题,就是说输出的结果和我们想的不一样.例如我们把上述代码预测值有4改成5.
2.error是由代码异常引起的,它可以产生测试代码本身的错误,也可以是被测试代码中的一个隐藏BUG,例如除零(这里不做演示).