Junit单元测试
Posted 364.99°
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Junit单元测试相关的知识,希望对你有一定的参考价值。
1.测试分类
1.1 黑盒测试
不需要写代码,直接给输入值,查看输出值是否符合期望
市场上最常用的测试方法,较简单
1.2 白盒测试
需要写代码,关注程序的执行过程
有一定的操作
2.白盒测试案例
2.1 使用步骤
♦ 定义一个测试类
♦ 定义测试方法
♦ 给方法添加注解@Test
♦ 导入junit依赖
被测试的类:
public class Count {
public static int sum(int a,int b){
return a+b;
}
public static int diff(int a,int b){
return a-b;
}
}
测试单元类
import org.junit.Assert;
import org.junit.Test;
public class CountTest {
@Test
public void testSum(){
//调用sum方法
int result = Count.sum(1,2);
//断言:输出与期望值比较
Assert.assertEquals(3,result);
}
@Test
public void testDiff(){
int result = Count.diff(1,2);
Assert.assertEquals(-1,result);
}
}
运行查看控制台输出
说明
测试方法:建议无返回值类型、空参数列表
Assert.assertEquals(期望的结果,运算的结果)
结果判定:绿色的✔表示通过,红色表示不对
2.2 补充
初始化方法(注解):
@Before
在所有测试方法执行之前先执行
释放资源方法(注解):
@After
在测试方法执行结束之后执行(无论测试方法是否通过)
package com.study.web;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
public class CountTest {
/*
初始化方法:
@Before在所有测试方法执行之前先执行的
*/
@Before
public void init(){
System.out.println("init...");
}
/*
释放资源方法:
@After在测试方法执行结束之后执行(无论测试方法是否通过)
*/
@After
public void close(){
System.out.println("colsed...");
}
@Test
public void testSum(){
System.out.println("sum...");
//调用sum方法
int result = Count.sum(1,2);
//断言:输出与期望值比较
Assert.assertEquals(3,result);
}
@Test
public void testDiff(){
System.out.println("diff...");
int result = Count.diff(1,2);
//改写一个错误的期望值,模拟方法出错
Assert.assertEquals(-2,result);
}
}
以上是关于Junit单元测试的主要内容,如果未能解决你的问题,请参考以下文章