序,Junit测试是单元测试的一个框架,提供了很多方法,供我们快速开展单元测试。现在让我们慢慢学习Junit单元测试框架
一、Junit的三个核心概念测试类、测试集、测试运行器
1 测试类
公共的,包含一个无参构造函数,含有一个或几个测试方法(@Test注释)。没有为测试类定义测试集时,JUnit自动提供一个测试集。
2 测试集
把多个相关测试归入一组,可以使一个测试类,也可以包含多个测试类。
3 测试运行器
执行测试集的程序,JUnit4提供了一些测试运行器,如下:
二、使用参数化运行器Parameterized运行测试的例子
举一个org.junit.runners.Parameterized的例子:
在这个例子中,可以指定运行器为Parameterized,测运行器的特点是允许你使用不同的参数多次运行同一个测试。
解释:
1 必须使用@RunWith注释,并且Parameterized.class为参数值
2 声明变量
3 提供一个用@Parameters注释的方法
。。。未完待续。
package com;
import static org.junit.Assert.*;
import java.util.Arrays;
import java.util.Collection;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized.Parameters;
import org.junit.runners.Parameterized;
@RunWith(value = Parameterized.class)//指定测试运行器
public class ParameterizedTest {
private double expected;
private double valueOne;
private double valueTwo;
@Parameters
public static Collection<Integer[]> getTestParameters() {
return Arrays.asList(new Integer[][] { { 2, 1, 1 }, { 3, 2, 1 },
{ 4, 3, 1 } });
}
public ParameterizedTest(double expected, double valueOne, double valueTwo) {
this.expected = expected;
this.valueOne = valueOne;
this.valueTwo = valueTwo;
}
@Test
public void sum(){
APP app = new APP();
assertEquals(expected,app.getSum(valueOne, valueTwo),0);
System.out.println("--");
}
}