Junit单元测试
IT特工 人气:0单元测试Junit
一.测试的分类:
1.黑盒测试:不需要写代码,给输入值,看是否可以得到预期的结果。
2.白盒测试:需要写代码,需要关注程序具体的执行流程。
二.Junit使用
1.Junit属于白盒测试
步骤:
1.定义一个测试类(测试用例)
建议:
-
测试类名:被测试类+test
-
包名:xxx.xxx.xxx.tset
2.定义测试方法:可以独立运行
建议:
-
方法名:test+测试的方法名
-
返回值:void
-
参数列表:空参
3.给方法就爱注解(@test)
@Before就是在执行一个方法之前必须要执行一些资源,那么我们可以将这些资源放在一个方法中,并添加@before注解
@After在方法执行结束后,进行一些扫尾的处理,例如关闭资源等
4.导入Junit的依赖环境
判定结果:
-
红色:失败
-
绿色:成功
-
在Junit中一般我们会进行断言操作(因为在Junit中一般会通过程序执行后的颜色来判断,而不是直接输出结果)
具体代码演示:以一个计算器的加减法为例
首先我们以main方法进行测试,代码如下:
package com.gcy.calculate;
/**
* 创建一个计算器类(只做加法和减法)
*/
public class Calculate {
/**
* 加法
* @param a
* @param b
* @return
*/
public int add(int a,int b){
return a+b;
}
/**
* 减法
* @param a
* @param b
* @return
*/
public int sub(int a,int b){
return a-b;
}
}
mian方法测试类:
package com.gcy.calculate;
/**
* 利用主方法的形式进行测试
*/
public class CalculateTest {
public static void main(String[] args) {
//创建对象
Calculate c=new Calculate();
int result=c.add(1,2);
System.out.println(result);
}
}
上面这种测试方法的缺点是当我们进行了加法的测试后,如果再对减法进行测试,就必须将加法的测试进行注解或进行删除,非常的不变,因此推荐使用Junit进行测试
利用Junit进行测试
package com.gcy.test;
import com.gcy.calculate.Calculate;
import org.junit.Assert;
import org.junit.Test;
/**
* 使用Junit进行测试
*/
public class CalculateTest {
/**
* 对加法进行测试
*/
@Test
public void testAdd(){
//创建计算器对象
Calculate c=new Calculate();
//调用方法
int reslut= c.add(1,2);
//使用断言
Assert.assertEquals(3,reslut);
}
@Test
public void testSub(){
//创建计算器对象
Calculate c=new Calculate();
//调用方法
int reslut= c.sub(6,5);
//使用断言
Assert.assertEquals(1,reslut);
}
}
在进行Junit进行测试时,注意一般是看程序执行后下方的颜色,红色代表失败,绿色代表成功,应为如果直接输出结果二不使用断言的话,就可能会出现错误,例如,当我们进行加法测试时,
由于失误,调用了减法,程序也不会出错。有兴趣的可以自己尝试一下。
加载全部内容