Junit 单元测试框架
JUnit 是一个回归测试框架(regression testing framework),供Java开发人员编写单元测试之用。JUnit 测试是程序员测试,即所谓
白盒测试
。
一、白盒测试和黑盒测试
白盒测试与黑盒测试二者最大的区别就是测试对象不一样。
白盒测试
主要针对的是程序代码逻辑,也就代码层面的测试
黑盒测试
主要针对的是程序所展现给用户的功能, 也就是软件层面的测试
白盒测试
白盒测试: 是通过程序的源代码进行测试而不使用用户界面。这种类型的测试需要从代码逻辑发现内部代码在算法、溢出、路径、条件等等中的缺点或者错误,进而加以优化。
黑盒测试
黑盒测试: 测试人员通过输入他们的数据然后看输出的结果。在测试时,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收和正确的输出。
二、单元测试规范
- 类名: 定义测试类,类名是由被测试类名Test构成。例如:CalculatorTest
- 包名: 定义的测试类需要放在xxx.xxx.xxx.test包中。例如:package com.mylifes1110.test;
- 方法名: 测试方法的方法名有两种定义方式test测试方法和测试方法。例如:testAdd和add
- @Test注解: 需要在测试方法上方加@Test注解来完成测试,只要是加该注解的方法,可以单独运行此方法来完成测试。
三、快速入门
1. 引入依赖
junit 和 hamcrest 是两个不同的框架,不同的东西。junit 使用了 hamcrest 框架。所以使用 junit 必须要引入 该框架。
junit-4.11.jar
和 hamcrest-core-1.3.jar
2. 快速使用
public class TestJunit {
@Test
public void test01(){
System.out.println("Hello World");
}
@Test
public void test02(){
System.out.println(calculate(10, 20));
}
public int calculate (int a, int b){
return a + b;
}
}