- 测试分类
- Junit 使用步骤
- 测试结果的判定
- 常用的注解
- @Before
- @After
黑盒测试:不需要写代码,不需要关注程序执行具体逻辑和流程,给输入值,看程序是否能够输出期望的值 白盒测试:需要写代码,需要关注程序执行的具体逻辑、流程、性能等技术细节
Junit 属于白盒测试
Junit 使用步骤1.定义一个测试类(测试用例) 规范建议: 测试类命名:功能名称或者类名 + Test 包命名:xxx.xxx.xxx.test
2.定义测试方法 规范建议: 方法名:test + 被测试的方法名 返回值:void 参数列表:空参
3.给方法加上注解 @Test
4.添加Junit的依赖环境
添加 Junit 依赖环境前,输入@Test 注解会报错,点击红色灯泡或者按下组合键 Option + Enter ,如下图所示,选择将 Junit4 添加到类路径中
使用断言操作,例如,测试方法 add(int a, int b),传入参数 1,2,期望的输出结果是 3,即我断言这个结果是 3,所以可以将断言的结果和实际方法返回的值做对比,如果相同则测试通过(结果会显示绿色),如果不同则测试不通过(结果会显示红色)。
可以使用 Assert 的静态方法 public static void assertEquals(long expected, long actual)
,进行断言相等比较
示例代码:
package priv.lwx.javaprac.test;
import org.junit.Assert;
import org.junit.Test;
import priv.lwx.javaprac.junit.Calculator;
/**
* @Author liaowenxiong
* @Version
* @date 2021/9/14 下午5:28
*/
public class CalculatorTest {
/**
* 测试add方法
*/
@Test
public void testAdd() {
// 创建Calculator对象
Calculator c = new Calculator();
// 调用add方法
int result = c.add(3, 5);
// System.out.println(result);// 测试时通常情况下不要输出
// 使用断言,和真实的结果对比,相同则测试通过(会显示绿色),不同则测试不通过(会显示红色)
Assert.assertEquals(8,result);
}
/**
* 测试sub方法
*/
@Test
public void testSub() {
// 创建Calculator对象
Calculator c = new Calculator();
int result = c.sub(1, 2);
// 使用断言相等比较
Assert.assertEquals(-1, result);
}
}
断言相等比较,如果预期的值和实际返回的值不相等,会看到如下的输出结果:
在所有测试方法执行前都会先执行 @Before
注解的方法。
在所有测试方法执行后都会自动执行 @After
注解的方法。 注意:测试方法报错,也会自动执行 @After
注解的方法。