一、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("--"); } } |