一、一个简单的Junit测试流程:

  1、在项目中导入junit-4.7.jar包,

    方法:右击项目,选择Build Path->Configure Build Path->Libraries->Add External JARS,选择junit-4.7.jar包的位置,导入。

    注:如果想看junit的源代码,导入时一并将junit-4.7-src.jar这个源文件包一起导入即可。

  2、写一个类,如在类中加入两个最简单的加减法的方法。

    如:

      public class JunitDemo {
        public int add(int x,int y){
          int z = x+y;
          return z;
        }
        public int subtraction(int x,int y){
          int z = x-y;
          return z;
        }

      }

    新建一个Junit测试类,方法:新建一个文件,类型为Junit Test Case,命名时最好是被测的类名+test,如JunitDemoTest

  3、创建好junit测试类后,对每个需要测试的方法测试,如:

    

    public class JunitDemoTest {

      @Test
      public void testAdd() {
      int z = new JunitDemo().add(2, 3);
      assertEquals(5, z);
      }
      @Test
      public void testSubtraction(){
      JunitDemo jd = new JunitDemo();
      int z = jd.subtraction(5, 2);
      assertEquals(3, z);
      }

    }

  4、右击junit测试类,选择以junit的方式来运行,之后即可看见测试结果。

二、Junit中的Annotation

  @Test  public void method()    定义一个要测试的方法

  @Before public void method()    在每一个测试之间都会被执行的方法,这个方法常用来进行一些测试环境的准备。

                     如:读入输入数据、初始化类等

  @After public void method()    与@Before进行对应,做一个清理工作

  @BeforeClass public static void method()  在所有的测试开始之前执行,这个方法在类运行的时候运行,而且只运行一次。

                     所有常用来做一些所有方法都要依赖到的工作,如:数据库的链接

  @AfterClass public static void method()     与@BeforeClass进行对应,做一些类级别的清理工作

  @Ignore               表示方法是被忽略的,这个方法非常实用,比如方法已经修改,但是对应的测试

                     方法还没有得到一致的修改的时候,可以用这个关键词忽略这个方法

  @Test(expected==IIIegalArgumentException)  检查测试方法是不是抛出了相对应的异常

  @Test(timeout=100)        如果方法的执行操作所消耗的毫秒数>100MS,那么方法失败

三、Junit单元测试用例的执行顺序:

  @BeforeClass->@Before->@Test->@After->@AfterClass

  注:每一个测试方法的调用顺序为:

  @Before->@Test->@After

四、最重要的断言Assert,断言这里的方法太多,举几个例子好了,其他的自行查看API

  assertEquals("message",A,B):检查A和B是否有相同的内容

  assertSame("message",A,B):检查A和B是否是同一个对象

  assertTrue("message",A):检查A条件是否为真

  

05-29 01:20