一. 快速入门
1. 在工程中引入junit.jar
2. 建立test class,继承自junit.framework.TestCase
如, 在工程的标题上点击右键,选择New->JUnit Test Case, 输入要创建的测试类名TestClass
import junit.framework.TestCase;
public class TestClass extends TestCase { ... }
3. 在test class中,定义一些以“test”开头的无返回(void)方法
如, 可以使用assertEquals() 等断言方法
import junit.framework.TestCase;
public class TestClass extends TestCase {
public void testSay(){
HelloWorld hi = new HelloWorld();
assertEquals("Hello World!", hi.say());
}
}
4. 运行测试, junit.textui.TestRunner.run(testClassName.class);
如, 在main()方法中输入上面的junit.textui.TestRunner.run(TestClass.class); 然后点击Run->Run As->JUnit Test
import junit.framework.TestCase;
public class TestClass extends TestCase {
public void testSay(){
HelloWorld hi = new HelloWorld();
assertEquals("Hello World!", hi.say());
}
public static void main(String[] args) {
junit.textui.TestRunner.run(TestClass.class);
}
}
二. 进阶-使用JUnit 4
1. JUnit最基本的5个点:
1) 由于JUnit4.1是基于JDK1.5开发的,因此它集成了JDK1.5版本的许多特性。其中之一就是一改过去需要扩展TestCase基类以及测试方法必须以“test”开头的约束,而使用annotation标记来标识哪些方法需要测试。每个测试用例类至少有一个方法被“@Test”标记,否则在使用JUnit引擎运行时会抛出一个没有测试方法的异常;
2) 一个测试类就是一个普通的Java类,在形式上没有任何特殊的地方。一般地,我们为了方便区分测试类与源码类,人为地在类名上加上“Test”字样;
3) 构造一些测试对象(new出一些目标测试对象);
4) 执行目标测试对象的目标方法;
5) 调用JUnit提供的验证方法来测试行为的结果,这里调用的是assertEquals方法。这些验证方法是org.junit.Assert类提供的静态方法,所以我们这里使用静态导入功能导入了Assert类。JUnit还提供了很多其他的验证方法(如强制测试失败的fail方法),可以在它的Javadoc文档中找到。
2. 典型的annotation
1) @Test标签用来标注待测试的方法,按照类中声明的顺序执行;
@Ignore标签告诉Junit4忽略它所标注的方法;
2) 预设环境
@BeforeClass标签注释的方法用于在整个类测试过程的初始化后调用一次;
@AfterClass标签注释的方法则是整个测试类结束之前调用一次;
@Before标签注释的方法在每个测试方法执行前调用;
@After标签注释的方法在每个测试方法执行后调用;
3) 限时测试
如,@Test(timeout=1000)
4) 测试套件由下面3个要素组成
i. @RunWith: 此注解告诉JUnit使用org.junit.runner.Suite的运行器;
(测试运行器: 每个类拥有一个运行器,如果没有指定@RunWith,那么你的测试类会使用一个默认的运行器org.junit.internal.runners.TestClassRunner来执行测试)
ii. @SuiteClasses: 将需要测试的类名加到@SuiteClasses中;
iii. 声明一个空类.
5) 参数化测试 (初学者可以先不看这项)
把一组组的测试数据集中放在一个集合中,这个集合作为测试类的参数,进行集中测试,避免为每一组测试数据写一个测试方法.
package com.webex.hill.study;
import static org.junit.Assert.assertEquals;
import java.util.Arrays;
import java.util.Collection;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import org.junit.runners.Parameterized.Parameters;
@RunWith(Parameterized.class)
public class MathParameterizedTest {
int faciend;
int multiplicator;
int result;
public MathParameterizedTest(int faciend, int multiplicator, int result) {
this.faciend = faciend;
this.multiplicator = multiplicator;
this.result = result;
}
@Parameters
public static Collection multipleValues() {
return Arrays.asList(new Object[][] {
{3, 2, 6 },
{4, 3, 12 },
{5, 7, 35 },
{6, 7, 42 },
{11, 7, 77 },
{25, 4, 100 },
{34, 3, 102 },
{21, 5, 105 },
{11, 22, 242 },
{8, 9, 72 }});
}
@Test
public void testMultiple() {
System.out.println("In testing 3 ...............");
assertEquals(result,Math.multiple(faciend,multiplicator));
}
}
分享到:
相关推荐
在Eclipse中使用JUnit4进行单元测试 在Eclipse中使用JUnit4进行单元测试
在Eclipse中使用JUnit4进行单元测试!
如何在Eclipse中添加Junit配置,以及使用!适合初学者下载
jUnit4入门好帮手,有详细介绍和完整的代码示例
NULL 博文链接:https://seaizon.iteye.com/blog/752650
如何在eclipse中使用junit4进行单体测试的说明教程
在 Eclipse中使用 JUnit 测试对于保证软件开发质量有着非常重要的作用,单元测试更是必不可少,JUnit 是一 个非常强大的单元测试包,可以对一个/多个类的单个/多个方法测试,还可以将不同的 TestCase组合成 ...
eclipse使用和junit使用
每编写完一个函数之后,都应该对这个函数的方方面面进行测试,这样的测试我们称之为单元测试。
Eclipse中使用JUnit
通过在Eclipse中使用junit进行单元测试,可以进行快速的测试
Eclipse中使用Junit插件测试