JUnit之学习笔记

来源:互联网 发布:域名注册 知乎 编辑:程序博客网 时间:2024/05/17 07:27

Junit以前就看了一点(8段才10mins,应该很快的)

老马讲的,Junit4

现在一边学一边笔记咯!

 

start

01 简单的例子

 


 

 

//以前很土的测试,用main方法

package com.lala.www;

 

public class T {

    public int add(int x,int y){

       return x + y;

    }

    public static void main(String args[]){

       int z = new T().add(3,5);

       System.out.println(z);

    }

 }

 

/*这样用main方法测试的缺点

1。不能一起运行

2。大多数情况下需要人为的观察输出来确定是否正确

*/

 

 


 

 

 

 需要。。。单元测试

原因:

1。。。。

2。测试降低后期的成本

 

但是很多公司都不写单元测试,有很多是形象工程。。。

单元测试的一个测试框架就是JUnit

 

用法:

1。new-Package

把name由com.lala.www改成com.lala.www.test,finish

2。右击com.lala.www.test-new-Junit test case,

选择模板New JUnit 4 test


 

 

package com.lala.www.test;

 

import static org.junit.Assert.*;//这是一个类,不是一个包;静态引入;assert断言,判断

 

import org.junit.Test;

 

import com.lala.www.T;

 

public class TTest {

 

    @Test

    public void testAdd() {

       int z = new T().add(5,3);

       assertEquals(8,z); 

    }

}


 

02

1。第二行静态引入 一个类,直接使用类中的静态方法,就不需要类名了

2。如何测试没有返回值的方法?譬如这个方法做了什么操作,测试结果对不对就行

3。去www.junit.org下载junit,不用MyEclipse或Eclipse自带的。。。,安装见0X

4。在JUnit4之后,新增了assertThat


03

 

可以只用assertThat了!!其他assert可以不用。            // &TS从此以后只用assertThat

前提是掌握表达式如

asserThat(0,is(1));                                   //fails

assertThat(0,is(not(1)));                          //passes

来自于hamcrest包,这个包专门写这种表达式,还需要去下载这个包。。。

http://code.google.com/p/hamcrest/downloads/list

 

 然后需要把jar包加进去

 

 

 

                                                                                                                                      to be continued