测试是编码过程中必不可少的,可以说,编码就是一个反复测试调bug的过程。
这里首先举一个简单的例子,直观感受一下什么是单元测试。
1、打开MyEclipse,新建一个Java工程项目,这里命名为UnitTest,并在项目目录下新建一个Source Folder源代码文件夹命名为test:
test文件夹目录下将存放的是单元测试类,在最终项目发布时可以直接删除。
2、在src下新建包com.xbbsmile.example,在包下新建一个类Calculate.java:
package com.xbbsmile.example;
public class Calculate {
public int add(int a, int b){
return a + b;
}
public int substract(int a, int b) {
return a - b;
}
public int multiply(int a, int b) {
return a * b;
}
public int devide(int a, int b) {
return a / b;
}
}
3、在test文件下也新建包com.xbbsmile.example,并编写测试,新建JUnit test case,勾选Junit4,IDE会自动帮助builder path导入jar包,命名为testCalculate.java:
testCalculate.java内容:
package com.xbbsmile.example;
import static org.junit.Assert.assertEquals;
import org.junit.Test;
public class testCalculate {
@Test
public void testAdd(){
assertEquals(10, new Calculate().add(6, 4));//第一个参数表示期望值,第二个表示测试方法返回值
}
@Test
public void testSubstract(){
assertEquals(1, new Calculate().substract(3, 2));
}
@Test
public void testMultiply(){
assertEquals(18, new Calculate().multiply(3, 6));
}
@Test
public void testDevide(){
assertEquals(4, new Calculate().devide(24, 6));
}
}
4、右击Run As---》JUnit Test,得到结果:
长绿条出现则单元测试成功,Runs:4/4表示总共4个测试方法执行,Errors:0表示没有异常,Failure:0表示没有错误。
注意:单元测试成功并不代表程序正确,只能够说明程序不错。