junit4学习笔记

来源:互联网 发布:最早的陶器知乎 编辑:程序博客网 时间:2024/05/21 15:42

使用junit做测试目的是尽量早的发现程序的bug,一个bug隐藏的时间越久,修复他的代价就越大。

Junit简介:
    Junit最初是由Erich Gamma 和 Kent Beck 编写的一个回归测试框架(regression testing framework),为单元测试(Unit Test)的支持框架。用来编写和执行重覆性的测试。即所谓白盒测试。


它包括了以下的特性:
    1 对预期结果作断言
    2 提供测试装备的生成与销毁
    3 易于组织执行测试
    4 图形与文字界面的测试器


Junit的环境配置

    环境:Eclipse 中配置junit,选择项目Junit4(在Package Explorer中) -> 右击鼠标 -> 选择properties -> 选择Java Build Path (在左边的菜单中) -> 在右边选择标签 Libraries  -> 单击按钮“Add Library”  -> 选择JUnit , 单击按钮 “Next>”  -> 选择JUnit library version 为: JUnit4 -> 单击按钮“Finish” –> 单击按钮 “OK”
    Junit4是Junit框架有史以来的最大改进,其主要目标是利用java5的Annotation特性来简化测试用例的编写。Junit4的官方网址是http://www.junit.org/。


总结一下3-4的不同,及4的改进

下面我们以一个简单的例子来介绍如何使用 Junit4同Junit3编写测试用例:
    public Class XXXX{
        public String hello(){
            return “hello”;
       }
    }


对于这个类的用junit3编写测试用例:
    import junit.framework.TestCase;
    public Class XXXXTest extends TestCase{
    public void testHello(){
            asssertEqual(new XXXX().hello(),”hello”);
      }
}


用junit4编写测试用例:
    import static org.junit.framework.assertEqual;
    import org.junit.Test;
    //这两个是junit4中必须导入的s
    public Class XXXXTest{
    @Test
    public void helloTest(){
            asssertEqual(new XXXX().hello(),”hello”);

        }

}

    从上面例子我们对Junit3和Junit4有了一个初步的印象,下面我们重点介绍Junit4和Junit3的主要区别:

    (1)、JUnit3必须引入类TestCase,即import junit.framework.TestCase;而Junit4中则是import org.junit.Test;和import static org.junit.Assert.*;;

    (2)、JUnit3必须继承类TestCase;JUnit4则不需要class BaseClassTest extends TestCase;

    (3)、Junit3的测试方法的命名必须以test开头;而JUnit4则不需要使用public void testMethod()的格式,但是类开始的时候要标记@Test;

    JUnit3和JUnit4通过assert*方法来判断结果:assertTrue(baseClass.method().equals(test.junit.BaseClass));;

     

  3.1 Junit4引入了java5.0的注释技术:

    这两个版本最大的区别在于JUnit3.x中测试必须继承TestCase,并且每个方法名必须以test开头,比如testMethod1();而在JUnit4.x中不必继承TestCase,采用了注解的方式,只要在测试的方法上加上注解@Test即可,从而不必再遵循以前的一些显式约定和反射定位测试;在JUnit4.x中如果继承了TestCase,注解就不起作用了,从而有很重要的

    

来源:http://blog.csdn.net/afeilxc/article/details/6218908

0 0
原创粉丝点击